【C++】这些题目求解

哪一些属于非法的?请解释原因(a)std::cin>>intinput_value;(b)inti={3.14};(c)doublesalary=wage=9999.99... 哪一些属于非法的?请解释原因
(a)std::cin>>int input_value;
(b)int i={3.14};
(c)double salary=wage=9999.99
(d)int i=3.14
尤其是题目(b),这样做貌似是可以运行的
展开
 我来答
匿名用户
2015-11-10
展开全部
题目B是很明显的以小存大,int 声明的是整数,3.14是至少是float(浮点数),所以i的结果是3,并不会是3.14,而且加了{}....
追问
用{}赋值和用()赋值有什么区别啊?
White_MouseYBZ
2015-11-10 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6508万
展开全部
解释如下:
(a)非法,变量必须在cin >>之前声明;
(b)合法,只是数据有损失,i只接收3舍去了小数部分;
(c)非法,wage没有声明;
(d)合法,同(b)。
更多追问追答
追问
用{}赋值和用()赋值有什么区别啊?
追答
那要看用在什么地方。在这里二者是一样的效果,int i={3.14};、int i=(3.14);和int i=3.14;一样给i赋值为3。在声明语句中,{}中是右值常量列表,这里{}中的列表只有一项,当然是合法的;()在声明语句中是逗号表达式的界限或纯粹是优先级所需,无论哪一个,int i=(3.14);都解释得通,都是给i赋值3。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式