當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ std::find用法及代碼示例


查找給定數字範圍內的元素。返回指向範圍 [first,last) 中第一個元素的迭代器,該元素比較等於 val。如果沒有找到這樣的元素,函數最後返回。

函數模板:

InputIterator find (InputIterator first, InputIterator last, const T& val)

first,last:
將迭代器輸入到序列中的初始位置和最終位置。範圍
搜索的是 [first,last),其中包含 first 和
last,包括first指向的元素,但不包括last指向的元素。

val:
要在範圍內搜索的值



返回值:
指向範圍中與 val 比較相等的第一個元素的迭代器。
如果沒有元素匹配,則函數最後返回。

例子:

Input:10 20 30 40
Output:Element 30 found at position:2 (counting from zero)  

Input:8 5 9 2 7 1 3 10
Output:Element 4 not found.    

// CPP program to illustrate 
// std::find
// CPP program to illustrate 
// std::find
#include<bits/stdc++.h>
  
int main ()
{
    std::vector<int> vec { 10, 20, 30, 40 };
      
    // Iterator used to store the position 
    // of searched element
    std::vector<int>::iterator it;
      
    // Print Original Vector
    std::cout << "Original vector:";
    for (int i=0; i<vec.size(); i++)
        std::cout << " " << vec[i];
          
    std::cout << "\n";
      
    // Element to be searched
    int ser = 30;
      
    // std::find function call
    it = std::find (vec.begin(), vec.end(), ser);
    if (it != vec.end())
    {
        std::cout << "Element " << ser <<" found at position:" ;
        std::cout << it - vec.begin() << " (counting from zero) \n" ;
    }
    else
        std::cout << "Element not found.\n\n";
          
    return 0;
}

輸出:

Original vector:10 20 30 40
Element 30 found at position:2 (counting from zero)

相關文章:





注:本文由純淨天空篩選整理自GeeksforGeeks大神的英文原創作品 std::find in C++。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。