如何解决strstr 函数返回的字符串与字符串不同
所以我有了这个程序。它应该打印出 true,因为 ret 是“Point”,只是我从 strstr 得到它,我将它与字符串“Point”进行比较。出于某种神秘的原因,它们不是相同的字符串。到底是怎么回事?代码如下:
#include <stdio.h>
#include <string.h>
#include <strings.h>
int main () {
char *ret;
ret = strstr("TutorialsPoint","Point");
if (strcmp(ret,"Point")) {
printf("Strings are equal\n");
} else {
printf("strings are not equal\n");
}
printf("The substring is: %s\n",ret);
return(0);
}
解决方法
如果字符串相等,
strcmp
返回 0:你应该写:
if(strcmp(ret,"Point") == 0){
printf("equal");
}
else{
printf("not equal");
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。