我需要编写程序来检查标准输入中的每个单独的字符,看看它是否是一个 ASCII 字符。我知道它需要检查的是第 8 位(代码中的第 7 位,如果我没记错的话)是否为 0,因为 ASCII 仅使用 7 位,但我很难弄清楚如何让它检查具体位。这是我在撰写本文时所拥有的。
#include <stdio.h>
#define MASK 7
int main(void)
{
auto char inChar;
do
{
inChar = getchar();
// Breaks the do-while loop if it detects End of File
if (inChar == EOF)
{
break;
}
printf("%c", inChar);
if ( inChar == (0 & MASK))
{
printf("Not an ASCII Character.\n");
}
}while(1);
puts("\n");
return 0;
}
我知道我还没有正确实施编码器来检查每个字符值,但我稍后会担心。现在我只需要帮助它检查变量中的特定位。
这也是我第一次在这里提问,所以请原谅我的问题格式不正确。