[問題] 請問關於TEXT()
比如說使用 MessageBox()的時候像
MessageBox(NULL, TEXT("YOU SHALL NOT PASS"), "WARING", MB_OK);
跟
MessageBox(NULL, "YOU SHALL NOT PASS", "WARING", MB_OK);
兩者之間差別在哪呢?其中的TEXT()作用為何?
查了一下資料發現TEXT定義在 winnt.rh 中,程式碼如下
#ifdef UNICODE
#define __TEXT(quote) L##quote
#else /* UNICODE */
#define __TEXT(quote) quote
#endif /* UNICODE */
#define TEXT(quote) __TEXT(quote)
它是說如果有定義 UNICODE 的話,字串就會變成
LYOU SHALL NOT PASS
否則為
YOU SHALL NOT PASS
這樣嗎?
所以是說如果沒有定義 UNICODE 的話,
MessageBox(NULL, TEXT("YOU SHALL NOT PASS"), "WARING", MB_OK);
和
MessageBox(NULL, YOU SHALL NOT PASS", "WARING", MB_OK);
是相同的結果囉?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.249.2.10
推
05/17 18:27, , 1F
05/17 18:27, 1F
→
05/17 18:28, , 2F
05/17 18:28, 2F
→
05/17 18:29, , 3F
05/17 18:29, 3F
→
05/17 18:44, , 4F
05/17 18:44, 4F
推
05/17 18:49, , 5F
05/17 18:49, 5F
→
05/17 18:49, , 6F
05/17 18:49, 6F