Re: [问题] 默认整数 int 浮点数 double

楼主: jackblack   2016-01-24 22:44:39
※ 引述《chenhung (小胡子)》之铭言:
: 大家好
: 我有一个问题想要请问
: 书上写,整数值的默认型别为 int
: 读到整数数值时,会先取得 4byte 的内存空间暂时储存
: 然后再把值复制到指定的变量所代表的内存空间储存
: 若程式码的数值未超过 int 最大或最小值
: 自然没问题 举例: byte a=8
: 浮点数的默认型别为 double
: 读到浮点数值时,会默认取得 8byte 的内存空间暂时储存
: 然后再把值复制到指定的变量所代表的内存空间储存
: 若配置给变量的内存空间是 8byte 自然没问题
: 若小于 8byte 则会产生型别不符的错误
: 举例: float b=3.0 //错误
: 我的问题就是:byte a=8,是 默认 int 4byte 放入 byte 1byte,这样就可以
: 可是 float b=3.0,是默认 double 8byte 放入 float 4byte ,这样就不行
: 请问是为什么呢?
: byte a=8 //正确 float b=3.0 //错误
: 1byte 默认 int 4byte 4 byte 默认 double 8byte
: 同样都是大放小,为什么 整数可以 浮点数不行 = =
: 如果标题取的不好,我再更改 @@
: 谢谢
不好意思回复这篇多年前的文章
但最近我也被这个问题困扰
有想到一个可能的原因
不知道对不对
也希望板上的高手能为小弟解惑
作者: jej (晃奶大馬桶)   2016-01-26 20:20:00
楼主: jackblack   2016-01-26 21:38:00
请问“程式中写下一个整数时,默认是使用不超过int型态长度”的意思是什么呢?整数实字默认不是 int 型态吗?
作者: jinn (阿昌)   2016-01-27 20:48:00
2F 因为用int型态,所以数字长度不能超过int啊。没冲突啊XD
作者: longlongint (华哥尔)   2016-01-31 12:39:00
有没有试过3.0f

Links booklink

Contact Us: admin [ a t ] ucptt.com