【发布时间】:2012-11-29 19:51:40
【问题描述】:
可能重复:
int c = getchar()?
#include <stdio.h>
main()
{
int c;
c = getchar();
while (c != EOF) {
putchar(c);
c = getchar();
}
}
我没有使用 C 的经验,但我知道 C++。我想问一下,这里的 'c' 被声明为整数类型,但令人惊讶的是,当我运行这个程序时,它甚至接受字符。谁能解释一下。
参考:C 编程 Ritchie/kernighan
【问题讨论】:
-
在C语言中,char类型可以知道为整数或字符:) 当使用
char variable作为整数时,它会在表格中打印其字符的普通数。当用作字符时,它将打印为字符 -
'我知道 C++' -- 显然不是,因为这段代码在 C++ 中的工作方式相同。