注册 登录
编程论坛 C++教室

关于float型的小问题

valentineyzq 发布于 2007-11-12 21:19, 576 次点击

int main()
{
float m=2.01;
cout<<m<<endl;
return 0;

}
以上代码在VC6下编译会给出warning C4305: 'initializing' : truncation from 'const double' to 'float'
但是可以正确输出。如果将m初始化为2.0就不会报错。
这个问题困扰了我好久,请问float型变量该怎么用啊?

9 回复
#2
孤魂居士2007-11-13 00:54

我的一点问题都没有```

#3
valentineyzq2007-11-16 23:40
回复:(孤魂居士)我的一点问题都没有```

用的是VC6.0吗?

#4
孤魂居士2007-11-17 01:37
以下是引用valentineyzq在2007-11-16 23:40:24的发言:

用的是VC6.0吗?

是的

#5
aipb20072007-11-17 01:50
float m=2.01f;
#6
valentineyzq2007-11-18 14:58
回复:(孤魂居士)以下是引用valentineyzq在2007-11-...
谢谢,这下不报warning了。能说一下原因吗?我的基础没打好,见笑了。
#7
neverDie2007-11-18 19:46
2.01是double类型
#8
nuciewth2007-11-18 22:47
常量默认是double型.
所以要强制写0.6788f给float
#9
nuciewth2007-11-18 22:47

应该说实型常量

#10
valentineyzq2007-11-19 12:36
回复:(neverDie)2.01是double类型
听你这么说我终于明白了。万分感谢!
1