我目前正在学习 C 语言,同时遵循《C 书》,其中一项练习是编写一个程序,让用户输入一个数字,然后程序会返回该数字。
在对我的代码进行故障排除时,我注意到我放入数字的数组中填充了......随机数据?
我觉得这很奇怪。这是正常的吗?如果是,为什么会发生这种情况?
这是我的代码:
int main() {
int numbers[20], index;
index = 0;
int num = getchar();
while (num != '\n') {
numbers[index] = num - 48; // ASCII "0" starts at 48
index++;
num = getchar();
}
for (int i = 0; i < index; i++) {
printf("%d", numbers[i]);
}
printf("\n");
return 0;
}