a+++++b
是不是((a++)++)+b
还有怎么在VC6.0下实现这个语句
问题点数:10、回复次数:9Top
1 楼megaboy(飞天御剑流之杀神一刀斩)回复于 2005-12-01 21:19:49 得分 0
a+++++b是非法的,甚至在标准中作为一个非法的例子来说明大嘴规则。Top
2 楼topcool99(笑千秋)回复于 2005-12-01 21:19:53 得分 0
这个要看具体的编译环境了。
不同的编译工具有不同的解释。
你还是放弃这种表达式吧,现在的编程早不提倡这类奇异表达式了。
支持人人可看懂,并且有唯一结果的语句。Top
3 楼fiftymetre(50米深蓝)回复于 2005-12-01 21:21:12 得分 0
这句话能编译通过吗?Top
4 楼lvpinging(呵呵)回复于 2005-12-01 21:24:51 得分 0
我今天在看C陷阱与缺陷的时候看到的.........
式子是非法的Top
5 楼cunsh(村少)回复于 2005-12-01 21:49:46 得分 5
后缀++返回的是const的值.所以不可以a++++的.Top
6 楼cunsh(村少)回复于 2005-12-01 21:59:18 得分 5
后缀的operator++返回的将是一个a的临时的拷贝.所以再对这个临时的东西++是没有意义的.所以把它的返回值弄成const就是为了防止这样的式子.
Top
7 楼RainWindy(风雨交加)回复于 2005-12-01 22:29:37 得分 0
这种连自己都不能理解的东东就不要再用了。Top
8 楼lvpinging(呵呵)回复于 2005-12-01 22:35:04 得分 0
但是看到了..谁解释一下呵Top
9 楼lvpinging(呵呵)回复于 2005-12-01 22:45:40 得分 0
是A++ + ++B
a++不能做左值
Top




