[問題] C++運算元和運算子的基礎問題
題目如下:
Please determine the final value of varible after all statement are performed.
x=y=z=3;
x*=x++;
y+=++x-x++;
z=x++*++y;
書上的解法:
x*=x++; => x=x*x;x=x+1;
y+=++x-x++; => x=x+1; y=y+(x-x); x=x+1;
z=x++*++y; => y=y+1; z=x*y; x=x+1;
答案:x=13,y=4,z=48
但是..我用DEV-C++實際跑一次
答案卻是x=12,y=4,z=44
我仔細看了一下
實作裡面 x=3;x*=x++; 執行結果x=9
如果改成 x=y=3; y*=x++; 執行結果x=4,y=9
好混亂阿 為什麼前者沒做x++ 後者有
勞煩各位高手教一下這到底怎麼回事??
還有 最上面那題的答案到底應該是??
拜託各位大大了 感激不盡!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.114.251.158
推
12/19 14:06, , 1F
12/19 14:06, 1F
→
12/19 18:05, , 2F
12/19 18:05, 2F
→
12/19 18:06, , 3F
12/19 18:06, 3F
→
12/19 18:07, , 4F
12/19 18:07, 4F
→
12/19 19:21, , 5F
12/19 19:21, 5F
→
12/19 19:21, , 6F
12/19 19:21, 6F
推
01/21 01:09, , 7F
01/21 01:09, 7F
PLT 近期熱門文章
PTT數位生活區 即時熱門文章