心随云飞 发表于 2019-7-25 12:02:02

类型转换

#include <stdio.h>
void main()
{
        int a,b = 322;
        float x,y = 8.88;
        char cl = 'k',c2;
        a=y;
        x=b;
        a=cl;
        c2=b;
        printf("%d,%f,%d,%c",a,x,a,c2);
       
}
为什么第三个a=107

迷雾少年 发表于 2019-7-25 12:11:52

'k'的ascii码值就是107啊

df3379 发表于 2019-7-25 13:36:02

这样的写法有问题。int应该多一个变量e来使用e=y;
现在这种写法两个a的值都是107

YiMingC 发表于 2019-7-25 21:43:40

因为你将一个字符作为整形输出,打印的就是它的ASCII码。
你可以参考一下这篇文章:ASCII 码表
页: [1]
查看完整版本: 类型转换