C⼀C++ 如何判断vector中某值 是否存在!!

2024-12-27 21:08:17
推荐回答(5个)
回答1:

#include

vector vec;

        vec.push_back(1);

        vec.push_back(2);

        vec.push_back(3);

        vec.push_back(4);

        vec.push_back(5);

        vector::iterator ret;

        ret = std::find(vec.begin(), vec.end(), 15);

        if(ret == vec.end())

            cout << "not found" << endl;

        else

            cout << "found it" << endl;

扩展资料:  

C/C++ —语言判断数字或字符的函数

isalnum函数

原型:extern int isalnum(int c);  

用法:#include    

功能:判断字符变量c是否为字母或数字  

说明:当c为数字0-9或字母a-z及A-Z时,返回非零值,否则返回零 

isupper函数 

原型:extern int isupper(int c);

头文件:(旧版本的编译器使用)

功能:判断字符c是否为大写英文字母

说明:当参数c为大写英文字母(A-Z)时,返回非零值,否则返回零。

附加说明: 此为宏定义,非真正函数。

isgraph函数

定义函数:int isgraph (int c)

函数说明:检查参数c是否为可打印 字符,若c所对映的ASCII码可打印,且非空格字  符则返回TRUE。

返回值:若参数c为可打印字符,则返回TRUE,否则返回NULL(0)。

附加说明:此为 宏定义,非真正函数。

回答2:

方法一:自己写循环遍历。

方法二:使用STL的find()函数。

用法例子:

vector vec;
vector::iterator it;
int value=24;

it=find(vec.begin(),vec.end(),value);

if (it!=vec.end())
{
//vec中存在value值
}
else
{
//vec中不存在value值
}

注意,如果vector中保存的是自定义类型(结构体/类),则需要为该类型重载==操作符。

回答3:

不是很明白你的意思 是说gogo[0][4]的那个边界你自己知道的吗,然后用一个越界的数进行测试之类的吗 ??
按照我的理解 就是先取出size ,然后拿那个边界和size比较
#include
#include
#include
#include
using namespace std;

int main()
{
vector run;
vector< vector > gogo;
run.push_back("123");run.push_back("123");run.push_back("123");
gogo.push_back(run);
int size = gogo.size();
if(size>=4){
cout<
if(gogo[0][4].length()==0)
{
string temp = gogo[0][2];
cout < cout << "yes";
}
}

else
printf("越界了!");
return 0;
}

回答4:

你可以先找gogo[0].size()求其内所存实际数据个数,然后可以知道gogo[0][4]是不是存在了

回答5:

1. 像数组一样使用,size获取大小,使用下标来访问处理。
2. 使用iterator来处理,到最后是,迭代器为空了。