偶然翻标准,发现 if 还可以这么写……

2011-08-23 09:16:02
if(int a = m + n)
cout<<a<<endl;
else
cout<<a+1<<endl;

不只是 if,switch、for、while 的判断条件都可以这么写……

从来就没有人说过啊有木有!!
...全文
5813 216 打赏 收藏 转发到动态 举报
写回复
用AI写文章
216 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangyafei13 2011-08-29
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 taodm 的回复:]
因为你看过的书不够多。
[/Quote]

呵呵,嗯,的确,还是应多看些书先,学这东西别着急的,慢慢来 0.............\\
SoulRed 2011-08-29
  • 打赏
  • 举报
回复
。。。不错。。学了一招啊。。。
xinxian13 2011-08-29
  • 打赏
  • 举报
回复
mark,thanks
shanchong234 2011-08-29
  • 打赏
  • 举报
回复
不建议这么个写法
2011-08-29
  • 打赏
  • 举报
回复
[Quote=引用 213 楼 diyigehaoren 的回复:]
话说看的太像散分的了……
[/Quote]
说实话这帖原本不是散分帖,我只是没想到竟有这么多人分不清最基本的表达式、语句、声明、初始化和赋值。

if(int a = 0) 和 for(int a = 0;;) 中的“int a = 0”适用的是不同的语法,例子参见 79 楼和 87 楼。
缺媳妇的郝 2011-08-29
  • 打赏
  • 举报
回复
话说看的太像散分的了……
forster 2011-08-29
  • 打赏
  • 举报
回复
后面是宏就要悲剧
Chirive 2011-08-28
  • 打赏
  • 举报
回复
来接分
youkuxiaobin 2011-08-28
  • 打赏
  • 举报
回复
楼主三分!!!
健一 2011-08-28
  • 打赏
  • 举报
回复
我是来接分的~~

这样肯定可以啦
Linux上跑WIndows 2011-08-28
  • 打赏
  • 举报
回复
[Quote=引用 26 楼 hiroyukki 的回复:]
引用 21 楼 jackyjkchen 的回复:

引用 18 楼 hiroyukki 的回复:

引用 15 楼 jackyjkchen 的回复:

C99的,跟c++学的,大家想想,是不是经常在for里这么写?

一样的道理

我试了下,gcc也不支持在 for 体内的变量声明。
看来并非C99标准

编译选项--std=c99选了没有

哦,原来如此。
那 c……
[/Quote]
我怎么没再C++primer中见到
grefen 2011-08-28
  • 打赏
  • 举报
回复
此内容在《c++编程思想》卷1中有相关的讨论;
Joe-xXx 2011-08-28
  • 打赏
  • 举报
回复
跟for不是类似么?

for(int i=0;i<5;++i)
{
//....
}
witwolf 2011-08-28
  • 打赏
  • 举报
回复
显然是来散分的
cscscs1027 2011-08-28
  • 打赏
  • 举报
回复
有什么问题?
wangw89 2011-08-28
  • 打赏
  • 举报
回复
应该可以啊,不过没见过的
loyy77 2011-08-28
  • 打赏
  • 举报
回复
>0 就为true
热爱生活 2011-08-28
  • 打赏
  • 举报
回复
可以,但不支持。
习惯不好,代码写出来应该便于理解。
2011-08-28
  • 打赏
  • 举报
回复
[Quote=引用 190 楼 ljhtdcq 的回复:]
我想知道楼主准备怎么结贴给分呢!
[/Quote]

那个……前 50 个回帖每个 4 分大家不会有意见吧……
2011-08-28
  • 打赏
  • 举报
回复
[Quote=引用 184 楼 frais 的回复:]
本来就可以,你还可以这么写

if(int a = m + n,a = m - n)
[/Quote]
很抱歉地告诉你这是不可以的……
加载更多回复(195)

64,281

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧