55问答网
所有问题
对于这个东西,出现了这个警告:'*=' : truncation from 'const double ' to 'float ',为什么会这样?
如题所述
举报该问题
推荐答案 推荐于2018-02-28
在 C 语言中,如果不指定
数据类型
,那么小数
常量
会被认为是 double 类型的。
因此在你的初始化中
a* = 2.9;
这一句,a是 float 类型的,但是 2.9 是 double 类型的,由于它是常量,所以
编译器
称为 const double。double 是不能隐式转换为 float 的。
你可以这样修改解决:a *= 2.9f; // 强制将2.9作为单精度
希望对你有帮助,望采纳谢谢。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://55.wendadaohang.com/zd/QeLI8IcI8.html
其他回答
第1个回答 2013-04-01
这个警告可以不用理会,因为VC编译器默认的浮点数类型为double,你使用不会有错误,不影响执行结果。
如果不希望出现警告,这样写就可以了:
a*=2.9f;
第2个回答 2013-07-22
常数2.9 编译器是作为双精度浮点数处理的,这样在a*2.9后是个双精度的结果,赋予单精度的变量a就是出现上面这个警告。
a *= 2.9f; // 强制将2.9
相似回答
truncation
from
'
const
double
' to 'float' 什么意思
答:
就是在定义变量类型时候没注意,在编译的时候便把
double
即双精度型变量转换成了单精度浮点型,所以会报错。在变量定义的时候注意一下就好。
truncation
from
'
const
double
' to 'float' 的意思是?
答:
在 C 语言中,如果不指定数据类型,那么小数常量会被认为是
double
类型的。因此在你的初始化中 x = 3.6;这一句,x 是 float 类型的,但是 3.6 是 double 类型的,由于它是常量,所以编译器称为
const
double。double 是不能隐式转换为 float 的。编程注意事项:1、程序不仅需要给计算机读 , ...
C语言浮点数“
truncation
from
'
const
double
' to 'float'”?_百度知 ...
答:
其它与C语言内一样当然也可以使用C语言方法,但C语言内不支持
const double
一样 纯手打
...编译的时候
出现
truncation
from
"
const
double
" t0 "const float...
答:
现在的编译器,在你输入3.0这个数的时候,会被默认为
double
类型,而你将一个double类型的值赋给一个float类型的变量,而且是
const
类型的float变量,所以会提示有问题 两种方法:一.赋值float类型 const float PI=3.14159f;//告诉编译器是一个float类型 二.是用double类型 const double PI=3.14159;...
'argument'
:
truncation
from
'
const
double
' to 'float'
答:
把float都改成
double
吧,那2.8被当成
了const
double了貌似,要不就强制类型转换为flost。
大家正在搜
有人偷东西怎么贴公告警告
怎么警告偷东西的人
乱动别人东西警告怎么写
出现安全警告怎么办
宿舍丢东西警告单
乱拿别人东西的警告语
偷东西警告语
警告学生偷东西的句子
警告自己不买东西图片
相关问题
c语言中'initializing':truncation ...
float变量转bool的时候,怎么会出“truncatio...
c++程序哪里错了?求大神 显示warning C4305:...
C语言中const double什么意思