C语言中float和int的问题

float a=1.5;int b;b=a;请问在此之后b是int型还是float型,占16位还是32位?
2024-12-11 18:54:03
推荐回答(6个)
回答1:

类型是终身不变,在你定义了之后就不能改变的,所以不管你怎么赋值,它还是那个类型的值。。所以b还是int型,输出结果为b=1,一般32位操作系统,int和float类型都占4个字节。即4*8t=32位。
如果你想要b输出的值是1.5,那么可以用强制类型转换,(类型)变量,如:
(float)b=a;
然后输出b,自己多试试吧

回答2:

b是整形,目前其值为1,如果是TC编的为16位,vc6.0编的为32位

回答3:

a,b的类型,永远都不会变,b占32位,a占16位

回答4:

变量的类型一但定义就是不会再改变的.

b=a会将a的值转换成int类型(即转换成b的类型),之后再赋予b

回答5:

float是浮点数

回答6:

b是int型,因为题目已定义了b,所以b不会变,把a复制给b,会先安b的类型强制转换,再给b,b所占的字节数依不同的编译器不同而不同,没有固定的值,如果是TC编的为16位,vc6.0编的为32位