Re: [問題] 運算式不太了解
看板C_and_CPP (C/C++)作者flydragon198 (知音難尋)時間15年前 (2011/05/02 22:45)推噓0(0推 0噓 0→)留言0則, 0人參與討論串2/2 (看更多)
這個最主要是在考 a++,++a
a++和++a都是 a = a+1;
唯一的差別是,先加和後加
例如:
a = 1;
b = a++;
a = 1;
c = ++a;
b會變成1,而c會變成2,原因在於,a會先指定給b後才做加一的動作
c會變成2,是因為a先做了加一個動作,然後才指定給c
這種考題最主要是讓你練習運算子的優先順序
不過在實務上,程式寫成這種格式,會被殺死..........
※ 引述《j3234567 (顧正妹)》之銘言:
: 開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
: Dev C++
: 新手自學遇到的問題
: int a=10,b=20,c,d,e,f,g,h,i
: c=a++ +5
c = (10) + 5,然後a變成10+1
: d=a+--b
d = a + (20-1) = 11+19 =30
: e=(g=d)+2
e = 30+2
: f=(20= =20)+4
這個看不懂?中間的 = =不確定是不是判斷 20 是否等於20,
如果20 等於20,則為true,那麼就是1,反之則為零
f = 1+4
: g+=--a-b++
g = g + (--a) - b
g = 30 + 10 - 19
: 請問這些運算是要如何解析?
: 謝謝
--
兩袖清風,腦袋空空,無慮也無憂
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.84.10.232
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章