泰丽 发表于 2012-9-19 13:11:22

int a,b=322;是什么意思

#include <stdio.h>

void main()
{
        int a,b=322;
        float x,y=8.88;
        char c1='k',c2;
        a=y;
        x=b;
        a=c1;
        c2=b;
        printf("%d,%f,%d,%c",a,x,a,c2);
}

int a,b=322;这是什么意思 赋值b=322那 a呢 赋值给a什么
if 赋值给a是322的话 a=y;就是a=8.88
那编译的时候a为什么又等于107

晓北 发表于 2012-9-19 13:54:43

这个~~~~~~~你还是要先好好看看数据类型了~~~~~

洗脚水煮饺子 发表于 2012-9-19 13:58:02

本帖最后由 洗脚水煮饺子 于 2012-9-19 15:43 编辑

int a,b = 322;等同于

int a;
int b;
b = 322;

a的变量是0

泰丽 发表于 2012-9-19 14:11:30

洗脚水煮饺子 发表于 2012-9-19 13:58 static/image/common/back.gif
int a,b = 322;等同于

int a;


明白了 我还有个问题c2=b 因为b=322
所以编译的收c2不是应该等于322吗 为什么我编译的时候等于107呢 谢谢你拉{:5_108:}

洗脚水煮饺子 发表于 2012-9-19 15:47:45

泰丽 发表于 2012-9-19 14:11 static/image/common/back.gif
明白了 我还有个问题c2=b 因为b=322
所以编译的收c2不是应该等于322吗 为什么我编译的时候等于107呢 谢谢 ...

是的,可以这么理解

蒙奇D路飞 发表于 2012-9-19 16:23:25

A最好被赋值为C1你没看见啊,C1='K',隐式装换为107

﹏Xem丶 发表于 2012-9-19 16:28:25

洗脚水煮饺子 发表于 2012-9-19 13:58 static/image/common/back.gif
int a,b = 322;等同于

int a;


a为定义是乱值,并不是0

akon 发表于 2012-9-19 20:28:24

建议楼主多多看看变量的知识,a没有赋予初值,所以你可以F10调试下,看看a里面存的到底是什么数,当把一个字符型变量赋值给整型变量时,字符型数据将根据ASCII中对应的数值转化成整型数值赋值给变量!

亚历山大二世 发表于 2012-9-20 20:01:46

天啊,终于发现我不是最差的了

mingjun 发表于 2012-9-20 23:31:42

数据类型,谭浩强的书上讲得很透彻,看完了就上机调试吧

liliky 发表于 2012-9-21 08:48:40

用心去学····少问多研究······

flower723 发表于 2017-10-20 14:37:15

107是"k"的ASCII码值
页: [1]
查看完整版本: int a,b=322;是什么意思