我目前正在学习代码。我们的任务要求我们做一个数字猜谜游戏。指导员给出了一个大纲,以帮助我们完成项目。
当运行这个程序时,它只接受一个猜测,打印答案是" @"四次,这是为所选择的游戏数量而做的。
老实说,我无法弄清楚我做错了什么。我把源代码放在下面。任何帮助表示赞赏。
对于文件letterList.txt的fopen,我在同一目录中有一个文本文档,每个字母列在不同的行上。
xxx.so
答案 0 :(得分:1)
你遇到的问题是:
//get a guess from the user by calling the GetTheGuess function
GetTheGuess("playerguess");
//change the guess to lowercase
playerguess = tolower;
首先,GetTheGuess
函数调用与您拥有的原型声明不匹配。它也与实际的功能实现不匹配。而你实际上并没有得到猜测。您也不会调用tolower
,将函数的指针指定给变量playerguess
。
要纠正它,它应该看起来像
//get a guess from the user by calling the GetTheGuess function
playerguess = GetTheGuess(playerguess); // Note: Not passing a string, and use the returned value
//change the guess to lowercase
playerguess = tolower(playerguess); // Note: actually call the tolower function
您当然需要更改原型声明以匹配实际定义:
char GetTheGuess(char guess);