Closed. This question needs to be more focused。它当前不接受答案。
想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
上个月关闭。
我正在创建一个程序;
第一个输入,例如“ a”将给出“无重复”结果,
并且再次输入“ a”应该会给我“重复发现”的结果。
我正在127-129 btw行上工作。 https://pastebin.com/wQKH3iZE
请注意,通过使用位移“每个字符是否已被猜测?”来存储一位,可以提高存储效率。但我不会被打扰
想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
上个月关闭。
我正在创建一个程序;
第一个输入,例如“ a”将给出“无重复”结果,
并且再次输入“ a”应该会给我“重复发现”的结果。
I am having a hard time finding the logic to this program. Help would be much appreciated. Thanks.
我正在127-129 btw行上工作。 https://pastebin.com/wQKH3iZE
最佳答案
您有一个长度为256的数组(假设您使用单字节字符),将所有值初始化为0,然后输入字符时,将其强制转换为int,查找是否以前输入过,然后设置对应的数组元素为1。
int entered_char[256] = {0};
...
// in the main game loop, when you receive a guess
if (entered_char[(int) guess]){
... //already guessed
} else {
... //new guess
entered_char[(int) guess] = 1;
}
请注意,通过使用位移“每个字符是否已被猜测?”来存储一位,可以提高存储效率。但我不会被打扰
关于c - C:如何检测字符字符的重新输入? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59478743/