c++ 查找数组或者容器元素是否存在(find)

 

 

#include <iostream>     // cout
#include <algorithm>    // find
#include <vector>       // vector
#include <typeinfo>

using namespace std;
int main () {
    // using find with array and pointer:
    int myints[] = { 10, 20, 30, 40 };
    int * p;
    
    p = find (myints, myints+4, 30);  //返回查找到的元素的物理地址
    cout<<p<<"\n";
    if (p != myints+4)
        cout << "Element found in myints: " << *p << '\n';
    else
        cout << "Element not found in myints\n";
    
    // using find with vector and iterator:
    vector<int> myvector (myints,myints+4);
    vector<int>::iterator it;
    
    it = find (myvector.begin(), myvector.end(), 30);
    cout<<typeid(it).name()<<"\n";
    if (it != myvector.end())
        cout << "Element found in myvector: " << *it << '\n';
    else
        cout << "Element not found in myvector\n";
    
    return 0;
}

 

posted @ 2018-10-19 16:31  anobscureretreat  阅读(10468)  评论(0编辑  收藏  举报