C_and_CPP 板


LINE

小弟最近在学C++, 可是遇到了一个递增运算子的问题,一直搞不懂, 比方说: int i=0; i=++i; cout << i <<endl; 可以预期是先跑i=0+1,再令i=1,因此结果为输出1,实际上也是如此。 但是在下面的情况: int i=0; i=i++; cout << i <<endl; 我觉得应该是i=0,再令i=0+1,因此输出1吧? 可是实际去run,结果却是0。 想请问各位大大是为什麽为0呢? 谢谢! -- 标题 [请益] C/P值较高的耳机品牌? 看板 Headphone ───────────────────────────────────────
1F:→ tuiokh: 副厂的Earpod跟原厂会有差吗?05/19 16:55
2F:推 evadodoya: 那你觉得盗版的beats跟正版的有差吗05/19 17:05
3F:→ u87654321: 所以副场的earpod比较好罗?05/19 17:40
--



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.239.155.18
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1460650023.A.3AF.html
4F:推 longlongint: 直觉觉得是反串文的我怎麽了 04/15 00:08
5F:推 ilms49898723: Undefined Behavior 结案 04/15 00:11
6F:→ longlongint: 置底十戒之八 04/15 00:11
7F:→ longlongint: 十三戒之八 04/15 00:12
8F:→ alkali5566: 感谢楼上几位帮忙QQ,其实这是考试题目,所以我没有 04/15 00:15
9F:→ alkali5566: 想到是这方面的问题......学到了一课 04/15 00:15
10F:→ Schottky: 考试考 undefined behavior 是怎样 04/15 00:19
11F:→ alkali5566: 而且给的答案是说0...没说是Undefined Behavior 04/15 00:25
12F:→ alkali5566: 题目我是有简化过,不过大致上就是这边有问题 04/15 00:25
13F:→ wtchen: 下次记得看置底文喔,话说回来哪间学校出这种考题阿? 04/15 00:31
14F:→ Jockey66666: 把老师当掉 04/15 00:31
15F:→ Schottky: 我刚刚用 gcc 跑,结果是 1 耶~ XDD 04/15 00:31
16F:→ Schottky: 然後我有开 -Wall 所以有出现 warning 04/15 00:32
17F:→ Schottky: 快,拿这结果回去呛老师要分数 04/15 00:33
18F:→ alkali5566: 校名请恕我不说XD 我会跟老师反应这件事,再次感谢! 04/15 00:35
19F:推 winken2004: 考试题...... 04/15 01:30
20F:→ fatrabitree: 去呛老师,连undefined behavior都不知道 04/15 01:39
21F:→ tinlans: 老师真懒,改成 j = ++i 和 j = i++ 就没事了,叫他重出 04/15 01:59
我还是先澄清一下好了,原题目是给一段code要我们debug+写出debug後的output, 不过参考答案(好像是TA写的)没有提到这题有undefined behavior, 所以如果老师说这题我们应该要把这段错误改掉的话,我也就认了啦。 (虽然我之前没听过undefined behavior) ※ 编辑: alkali5566 (36.239.155.18), 04/15/2016 02:24:51
22F:→ wtchen: 搞不好是TA搞错… 04/15 02:30
23F:推 wtchen: 不过老师居然没教undefined behavior有点… 04/15 02:35
24F:推 Frozenmouse: 我觉得很多老师不会教这个的…XD 04/15 02:46
25F:推 bibo9901: 我一直觉得C++应该要直接让这种statement不合法 XD 04/15 03:23
26F:→ Schottky: 楼上,这类问题statement不见得全部都侦测得出来 04/15 03:42
27F:→ Schottky: 写复杂一点而逃过compiler检查是有可能的 04/15 03:43
28F:推 stupid0319: 会有人写这样的程式码搞自己吗? 04/15 07:01
29F:推 suhorng: 不会搞自己, 但是踩到雷还是有可能的, 不小心 alias 到.. 04/15 07:18
30F:推 ronin728: unsequenced expression,详见C++标准规格书ISO/IEC JTC 04/15 11:14
31F:→ ronin728: 1 SC22 WG21 N 3690第10页 04/15 11:14
32F:→ ronin728: Clang有很好的前端,这会有警告。GCC的话我没试过 04/15 11:16
33F:→ Schottky: 我是看 man gcc 的 -Wsequence-point 参数说明 04/15 11:53
34F:→ Schottky: 上面说有些更复杂的状况无法被这个参数侦测到 04/15 11:55
35F:→ Schottky: 但一般来说应付类似程式中的类似问题还是算相当有效 04/15 11:56
36F:→ Schottky: 你只要加 -Wsequence-point 或 -Wall 都会开启这项警告 04/15 11:57
37F:→ bibo9901: 我意思 有赋值(assign)的statement不视为expression 04/15 16:05
38F:→ bibo9901: 一并解决了 if( x = 1 ) 这种笔误... 04/15 16:06
39F:→ Schottky: 赞成! 那些爱用 if (-1==(fd=open(...))) 的人我早就 04/15 16:11
40F:→ Schottky: 看他们不顺眼很久了。 04/15 16:11
41F:→ Schottky: 还有那种 while (-1==(count=read(...))) 根本是邪教 04/15 16:17
42F:→ bibo9901: 缺点就是 x = y = z = 1 要分成三个 stmt 了 04/15 16:24
43F:→ ACMANIAC: 教到现在还没教整个程式语言最重要的undefined behavior 04/16 09:12
44F:→ ACMANIAC: 那上课到底在教什麽啊...... 04/16 09:12
45F:→ TobyH4cker: 教授不可能教吧XD 学生当自强 除非教授是神人 04/16 09:44
46F:→ Schottky: 教授也许不会吐 undefined behavior 这两个字 04/16 11:04
47F:→ Schottky: 但教授一定要教不可以在同一条 statement 里面赋值两次 04/16 11:05
48F:→ Schottky: 原来是缺乏神人教授指点,难怪我们都没有水晶球 04/16 11:06
49F:推 me356500: 大学考这个哦? 04/18 22:07







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP