永发信息网

c++ 定义常量

答案:2  悬赏:60  手机版
解决时间 2021-05-20 09:04
  • 提问者网友:原来太熟悉了会陌生
  • 2021-05-20 04:27

两个问题:

一,在定义一个浮点型常量的时候,后面加F已不加有什么不同呢
const float pi=3.14f
const float pi=3.14

二,隐士转换问题

int a;

float b=3.62;

a=(int)b; //在这里,我写成a=b为什么也可以通过编译,真是奇怪的,VC6.0和书上的问题还真多

最佳答案
  • 五星知识达人网友:英雄的欲望
  • 2021-05-20 06:01
从float到int
如果是直接赋值,比如a=b;编译器一般会给一个警告
如果是强转后赋值,比如a=(int)b;,这个警告就没有了

第一个问题:3.14f类型为float,不过3.14类型是double,但由于是常量赋值,所以编译器一般都会自动把3.14纠正为3.14f,而不会在运行时转换。加个f只不过和float类型相对应。
全部回答
  • 1楼网友:酒安江南
  • 2021-05-20 07:17
转换的时候int-->float不需强制转换 但是float-->int就需要强制转换了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯