问题描述
您好,很抱歉,这是重复的,但是其他解决方案都无法帮助我。找到和找到的变量都是"Point"
,但是当我调用strcmp
时,我得到一个负数,当我打印它们的长度时,它的len为9。请有人帮我理解为什么是这样,并且如何修复(如何使找到和找到的值和长度相同)?非常感谢。
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
int main(void) {
char found[] = "";
char tofind[] = "Point";
int i = 0;
while(i < 5){
char f = tofind[i];
strcat(found,&f);
i++;
}
int r = strcmp(found,tofind);
printf("%d\n",r);
printf("Found: %s with len: %lu\n",found,strlen(found));//says len is 9
printf("To Find: %s with len: %lu",tofind,strlen(tofind)); //says len is 5
return 0;
}
输出:
./main
-104
Found: Point with len: 9 this is i: 5
To Find: Point with len: 5
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)