gpt4 book ai didi

c - 如何编写一个函数来搜索数组中的字符串

转载 作者:太空宇宙 更新时间:2023-11-04 04:00:20 24 4
gpt4 key购买 nike

这是我目前所拥有的:

for(i = 0; i <= 9; i++){
printf("%d", i);
found = strpbrk(nameholder[i], searchterm);
if(strpbrk(nameholder[i], searchterm) == searchterm){
printf("found\n");
foundwhere = i + 1;
break;
}
}// end for

当我运行程序时,strpbrk 函数找到了字符串,但由于某种原因它从未触发 if 语句。我错过了什么?

最佳答案

根据 http://en.cppreference.com/w/c/string/byte/strpbrk , strpbrk() 用于

const char* strpbrk( const char* dest, const char* str );
Finds the first character in byte string pointed to by dest, that is also in byte string pointed to by str.

因此,如果您真的想在 nameholder[i],你应该使用strcmpstrstr .

另请注意,运算符 == 不能用于比较两个 char* 字符串是否相等,因为它只是比较地址是否相等而忽略字符串内容。请改用 strcmp()

关于c - 如何编写一个函数来搜索数组中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12481573/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com