我在 C 中有这段代码,我将在其中输入一串用空格分隔的数字,然后用strsep
. 如果我输入一个类似的字符串"1 2"
,并设置strcmp
为在最后一个元素之前查找一个数字,则代码有效,但如果我设置strcmp
为查找最后一个元素,则代码失败。你能建议任何修复吗?
char *string = malloc(1028), *found;
if (fgets(string, 1028, stdin) != NULL) {
while ((found = strsep(&string, " ")) != NULL) {
if (strcmp(found, "2") == 0) {
printf("%s\n", found);
}
}
}