【发布时间】:2015-09-22 12:46:51
【问题描述】:
所以我的问题是为什么有些人使用 int 变量作为 char 变量。 例子
int main()
{
int i;
scanf("%c",&i);
printf ("%c",i);
}
先谢谢了
【问题讨论】:
-
scanf("%c",&i);是错误的。所以printf ("%c",i);无法获得便携结果。 -
您是否尝试过您的代码?在线编译器说不行:ideone.com/clSfwc
-
@mch 如果没有设置
-Werror标志,则此代码编译时带有警告。 -
总是启用编译器警告!
-
“但它对我有用”并不意味着它在所有情况下都可以,甚至在第二次调用时也可以。请考虑 undefined behaviour 的含义