00001 /* 00002 00003 $ gcc bug.c -o bug 00004 bug.c: In function `main': 00005 bug.c:24: error: missing terminating " character 00006 bug.c:24: error: syntax error before numeric constant 00007 bug.c:24: error: missing terminating " character 00008 $ 00009 $ gcc -E bug.c -o bug.i 00010 $ gcc bug.i -o bug 00011 $ ./bug 00012 on line 24 we print:Hello World 00013 $ 00014 00015 */ 00016 00017 #include <stdio.h> 00018 00019 #define printf(...) printf("À la ligne" FOO __LINE__ \ 00020 FOO "on affiche: " __VA_ARGS__) 00021 #define FOO " 00022 00023 int main() 00024 { 00025 printf("Hello World\n"); 00026 return 0; 00027 }