看板
[ CSSE ]
討論串[問題] 2題程式不懂,是要怎麼看呢?
共 3 篇文章
首頁
上一頁
1
下一頁
尾頁
內容預覽:
1.#include <stdio.h>. #include <stdlib.h>. int main(void). {. int a=11,b=11;. a+=a+=b+=b%=b<<2;. printf(" %d ", a );. system("pause");. return 0;. }.
(還有395個字)
內容預覽:
OK, 應該確定了一件事. 這式子仍然是未定義行為. 只不過正好我所知的兩種行為得到的結果是一樣的. 問題在於這行程式在一個運算式之中對變數 a 跟 b 修改了兩次以上. 這會導致未定義行為. 只不過這個式子裡有所差別的地方計算出來的結果碰巧是一樣的而已. (有所差別的例子可以看 #1Deo3lyi
(還有236個字)
內容預覽:
a+=a+=b+=b%=b<<2;. 把簡式還原為正式語法. => [a] = a + (a+=b+=b%=b<<2). => [a] = a + (a = a + (b+=b%=b<<2) ). => [a] = a + (a = a + (b = b + (b%=b<<2) ) ). => [a
(還有354個字)
首頁
上一頁
1
下一頁
尾頁