当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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++。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。