假如我输入了一个h,我想知道h的类型转换过程,为什么最后输出了一串很长的数字?
# include
int main(void)
{
int i;
scanf("%d",&i);
printf("%d",i);
return 0;
}
i 是 int类型, 输入 %d,应该输入一个整数,你输入了字符h,导致实际上 i 并没有被赋值,它的结果 是随机的,取决各自的编译器和内存空间
如果你是想知道字符h,转换成整型的输出是什么,不妨这样写。
int main()
{
char h = 'h';
printf("%d",h);
return 0;
}
也就是说将定义变量h为字符h,在强制转为整形输出。
不知道你这个问题是否已经解决, 如果还没有解决的话: