我目前正在使用CS50 Speller功能。我已经设法编译了代码并完成了完整程序的原型,但是它不起作用(它不能识别任何拼写错误的单词)。我一次浏览一个函数并打印输出,以查看内部发生了什么。
_int = 3;
从我的角度来看,这很好。这使我想知道问题是否出在我的检查功能上,如下所示:
so.x = 5;
如果有敏锐的眼睛可以窥探什么问题,当我感到沮丧时,我将不胜感激。第一个函数用于将单词从字典加载到哈希表\链接列表中。第二个功能应该检查txt文件中的单词,以查看它们是否与链接列表中的任何术语匹配。如果不是,则应将其视为不正确。
答案 0 :(得分:1)
此if(strcasecmp(cursor->word, word))
是一个问题。来自man strcasecmp:
返回值
strcasecmp()和strncasecmp()函数返回一个 如果s1(或第一个整数,则小于或等于零的整数) 发现n个字节分别小于,匹配或 大于s2。
如果单词 match ,则返回0,其结果为false。