【发布时间】:2011-04-14 00:10:46
【问题描述】:
我正在编写一个简单的循环来确保我的输入是有效的二进制文件。例如:当用户输入任何大于 1 的数字时,我想抛出错误。我知道我需要检查 ASCII 数字。这里发生了什么?当我输入二进制时,我不应该得到错误。有什么想法吗?
for (int i=0;i<size;i++)
{
printf("%i is string sub %i\n",int(binary[i]),i);
if (int(binary[i]) != 48 || int(binary[i]) != 49)
{
printf("ERROR NOT A BINARY NUMBER\n");
exit(0);
}
}
输入:
0101
输出:
48 is string sub 0
ERROR NOT A BINARY NUMBER
【问题讨论】:
-
没有
binary[]的定义无法回答这个问题。