Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2052279
  • 博文数量: 454
  • 博客积分: 10921
  • 博客等级: 上将
  • 技术积分: 5396
  • 用 户 组: 普通用户
  • 注册时间: 2006-06-15 15:20
个人简介

伪IT男

文章分类

全部博文(454)

文章存档

2016年(2)

2013年(6)

2012年(17)

2011年(29)

2010年(24)

2009年(54)

2008年(53)

2007年(202)

2006年(67)

分类: C/C++

2007-06-30 20:16:27

     经常在写程序的时候遇到类似的警告:
warning C4305: '=' : truncation from 'const double
warning C4305: 'argument' : truncation from 'const double' to 'float'
等等;
原因:
在 C 语言中,如果不指定数据类型,那么小数常量会被认为是 double 类型的。
因此在你的初始化中

x = 3.6;

这一句,x 是 float 类型的,但是 3.6 是 double 类型的,由于它是常量,所以编译器称为 const double。double 是不能隐式转换为 float 的。
C语言中的确有此介绍.除了x=3.6f外还可x=3.6F都是正确的.证明详见谭浩强<>47页。
阅读(2446) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~