我正在閱讀一些C
的代碼,並被卡在這裏。有條件的衍生產品 - #define in C
下面你會發現頭文件中的代碼片段。
#if NUMREPS == 0
#define REPEAT(line) REPEAT0(line);
#elif NUMREPS == 16
#define REPEAT(line) REPEAT16(line);
#endif
而對於標識repeat16(line);
的導數定義如下:
#define REPEAT16(line) \
line;\
line;\
line;\
line;\
line;\
line;\
line;\
line;\
line;\
line;\
line;\
line;\
line;\
line;\
line;\
line;
這究竟編碼片段嗎? 我幫助了link瞭解代碼
哪一部分是令人費解你:
此使用宏時定義整函數經常使用呢? –
'line'到底是做什麼用的? – pistal
使用'gcc -C -E sourcecode.c> sourcecode.i'獲取預處理的表單'sourcecode.i'。然後用分頁器('less sourcecode.i')或編輯器('emacs sourcecode.i')查看它。 –