我有一个单词列表,可以说:
Hello
FAR
DC2012
我需要将所有这些扫描为字符串并将它们放入二叉树中。除非我进行扫描,否则我的程序都会在第三个字符串“ DC2012”处失败。我猜是因为它有数字,我正在使用“降低”功能,但是我需要使用它,所以我不确定。这是我的扫描代码:
while (fscanf(afp, "%s ", words) != NULL) {
for(i=0; words[i]!='\0'; i++){
words[i]=(char)tolower(words[i]);
}
printf("%s\n", words);
它会无限循环,请使用fgets()
而不是scanf
。而且您无需强制转换tolower()
的返回值。