※ 引述《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
: 同样都是大放小,为什么 整数可以 浮点数不行 = =
: 如果标题取的不好,我再更改 @@
: 谢谢
不好意思回复这篇多年前的文章
但最近我也被这个问题困扰
有想到一个可能的原因
不知道对不对
也希望板上的高手能为小弟解惑