【发布时间】:2014-05-08 21:12:08
【问题描述】:
我正在比较两个字符串,每个字符串都来自数组。
while(countX<10){
if(strcmp(scanWord[countX], currentWord[countX]) == 0)
{scoreCurrent++;scoreCurrent++;}
countX++;
}
"scanWord[countX]" 和 "currentWord[countX]" 不比较;每次出现时,即使它们是相同的,它们也不相同。如果我比较那些不是这些的东西并且我已经将它们打印到屏幕上进行检查,它会起作用。他们似乎打得不太好。提前致谢。
【问题讨论】:
-
恐怕信息不够。您描述它和查看代码的方式应该可以工作。由于它不起作用,您可能希望显示这些单词如何在数组中结束。小问题:为什么两次
scoreCurrent? -
@Jongware fgets(currentWord[countX], 20, stdin); fscanf(dataMarking, "%[^:]:%[^\n]%*c", scanWord[countX], scanDescription[countX]) 这有帮助吗?而这两个 scoreCurrents 都是出于懒惰。
-
如何声明
scanWord和currentWord? -
雅皮士。又一个“你忘记删除尾随硬回车”的场合了。
-
fgets()将换行符留在字符串中。你确定两个字符串都有换行符吗?