看板 C_and_CPP 關於我們 聯絡資訊
大家好, 我有一個問題關於#define想提出來跟大家請教, #define使用上可以是單行或是多行, 在多行的#define上只要在行尾加上反斜線\就可以了, Ex: #define ABC AAA,\ BBB,\ CCC 如果想要在多行的#define上加入注觸或#if等敍述, 似乎會有問題.. Ex: #define ABC AAA,\ /*comment*/ #if SUPPORT_BBB BBB,\ #endif CCC 請教大家, 有什麼方法可以做到加注解或#if在多行#define呢? 目前知道的是, 把注解放前面是可行的, Ex: #define ABC /*comment*/AAA,\ /*comment*/CCC 謝謝大家.. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.173.191.71 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1459500426.A.733.html
MOONRAKER: #if請放在#define外面 你會把外褲穿在內褲裡面嗎 04/01 16:52
MOONRAKER: 同是preproc dir還想包到#define裡面 不會太有創意嗎 04/01 16:53
MOONRAKER: 第一個問題也是 \其實是C的「續行」 04/01 17:54
MOONRAKER: 看起來好像用 \ 可以一直寫多行macro 其實是接成一行 04/01 17:55
MaxHaru: 但我需要#define一個很大的資料串, 又要能根據#if來增減 04/01 17:56
MaxHaru: 有什麼方法可以實現這種做法嗎? 04/01 17:57
MOONRAKER: \ 右邊本來就不准寫東西 04/01 17:58
MOONRAKER: 資料很多用fopen讀進來不就結了 04/01 18:04
MOONRAKER: 要增要減讀多少 用命令列參數控制 04/01 18:05
MOONRAKER: 資料量改變就要重新compile 這樣是有哪裡好了 04/01 18:06
james732: 覺得跟我想做的有點像 #1Mya385w (C_and_CPP) XD 04/01 18:15
james732: 我指的是語法的部份 04/01 18:15
MaxHaru: N大,謝謝你的建議,資料改變要重新compile確實是一個問 04/02 09:43
MaxHaru: 題,我再想想怎修正這個問題, 04/02 09:43