find函数在< algorithm >库中,使用时注意导入,
find函数的定义如下所示:
_InputIterator find(_InputIterator __first, _InputIterator __last, const _Tp& __val)
参数中,第一个为数组的起始位置,第二个为数组的终点,可以这样理解[begin, end),在这个范围内查找val这个值,注意它的返回类型是一个迭代器,与指针类似,这意味着我们不能直接把它作为下标来使用,但是用它减去_InputIterator __first就是我们需要的下标了,见下面一个小栗子
#include <iostream>
#include <algorithm>
using namespace std;
int main(void){
int a[5] = {5,3,2,1,4};
int* q = find(a, a+5, 3);
int r = q - a;
printf("位置为:%d\n", r);
printf("值为:%d\n", *q);
return 0;
}