作者ric2k1 (Ric)
看板EE_DSnP
標題Re: [問題] 請問一下?:這個運算子的意思
時間Sun Dec 16 22:58:59 2007
※ 引述《popo4231 (小泰)》之銘言:
: 標題: Re: [問題] 請問一下?:這個運算子的意思
: 時間: Sun Dec 16 22:01:00 2007
:
: 語法
: (expression evaluated as bool)?if true then return:if false then return
: 這是一個三元運算"子"
: 表示要吃三個運算"元"
: 問號前面放的是決策判斷條件 此運算子在判斷其真假後
: 如果為真則執行或是回傳:前面的code
: 如果為假則執行或回傳:後面的code
: 大概是這樣吧
:
: ※ 引述《Davefox (Fox)》之銘言:
: : 看到
: : MAX(a,b) ((a>b)?a:b)
: : 不太懂 ?: 這個運算子的意思> <
: : 順便也請問一下上面這段的意義為何謝謝
:
: --
:
※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 140.112.241.177
: ※ 編輯: popo4231 來自: 140.112.241.177 (12/16 22:22)
: 推 joshepsol:不要談政治比較好^^│││ 12/16 22:25
: ※ 編輯: popo4231 來自: 140.112.241.177 (12/16 22:25)
: 推 ric2k1:嗯, lecture note #3 有教過喔! 12/16 22:49
不過, 我想原 PO 可能是看到:
#define MAX(a,b) ((a>b)?a:b)
吧?
這裡 MAX 是個 Macro,
也就是說程式裡的 "MAX(a,b)" 會被在 compile time 用 "((a>b)?a:b)" 的字串代換,
比方說:
int main()
{
cout << MAX(10, 5) << endl; // will output 10
int a = MAX(3, 8); // a will = 8
int b = MAX(4, 7); // b will = 7
int c = MAX(a, b); // c = a = 8
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.121.134.219