Re: [問題] \的意思?
※ 引述《CuckooBoy (阿書)》之銘言:
: #define A B = 1;\
: C = 0
: 請問 ";\" 的意思?
只是接行符號而已,代表和下一行合併成一行來看,也就是和
#define A B = 1; C = 0
是一樣的意思
: 是用在一個變數定義多個常數嗎?
: 如果三個就...
: #define A B = 1;\
: C = 0;\
: D = 2
: 是吧??
沒錯
: 如果用在程式的話, main1和main2會是相同的? 那麼;\用來縮減程式行數囉?
定義巨集,主要的功能在於讓程式更具有可讀性以及一些重複但不需要用到副函數
功能的情況下使用。
: main1()
: {
: A;
: }
: main2()
: {
: B = 1;
: C = 0;
: }
這其實是和C語言有關,在C語言中,#define只能有一行,可是如果想要用巨集去定義
一些功能時,通常會有好幾行,全部寫成一行也可以,不過會造成難以閱讀,所以才
會用換行符號來接。
BTW,如果要用註解的話,記得要用/* */區塊註解,不然會有慘案發生
給個例子:
假設把 WDT 重設的方式為 WDT = 0, CWDT = 0x55 (我隨便編的)
那麼可以用一個巨集來取代
#define ResetWDT WDT = 0; /* 清除WDT數值 */ \
CWDT = 0x55 /* 重置WDT狀態 */
那麼以後只要用 ResetWDT 就可以取代那兩行動作,減少打字的時間
不過在debug上,巨集有時會讓人很頭痛……
--
我只是個想賺 P 幣的迷途小羔羊
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.67.247.117
推
08/18 13:23, , 1F
08/18 13:23, 1F
→
08/18 14:46, , 2F
08/18 14:46, 2F
ASM 近期熱門文章
PTT數位生活區 即時熱門文章
0
18