编译VS项目时出现警告:warning C4305:“初始化”:从“double”到“float”截断(warning C4305: 'initializing' : truncation from 'const double' to 'float')。
原因:
在 C 语言中,如果不指定数据类型,那么小数常量会被认为是 double 类型的。
如:float x;
x = 1.2;
其中 x 是 float 类型的,但是 1.2 是 double 类型的,由于它是常量,所以编译器称为 const double。double 是不能隐式转换为 float 的。
这时候可改成 x=1.2f; 或者 x=1.2F; 就可以了。
本文详细解释了在C语言中遇到的警告C4305,即从double到float的隐式转换截断问题,并提供了解决方案。通过示例演示了如何将double常量正确转换为float类型,避免警告出现。
1354

被折叠的 条评论
为什么被折叠?



