我正在使用gnu cpp
進行一些測試,並希望它保留宏並同時擴展其他用戶定義的宏。可能嗎? 下面是一段代碼(文件foo.c)的:是否可以讓gnu cpp保存包含宏?
#include <stdio.h>
#define NEWLINE(str) str "\n"
int main(){
puts(NEWLINE("foo"));
}
我希望的cpp foo.c
的結果是:
#include <stdio.h>
int main(){
puts("foo\n");
}
你能舉個例子嗎? – NPE
你爲什麼要問?你可以在某個給定點之後複製粘貼預處理過的輸出(例如,在最後一個'#include'後面),但即使這樣也不是很明智:你不想在'((void *)-1)'中讀取'MAP_FAILED'你的源代碼.... –