2024-02-13から1日間の記事一覧
__VA_ARGS__で可変長引数のマクロを実現できる。 example #include <stdio.h> #define DEBUG_PRINT(fmt, ...) fprintf(stderr, fmt, __VA_ARGS__) #define DEBUG_PRINT2(...) fprintf(__VA_ARGS__, 22) int main(int argc, char **argv) { char *name = "Taro"; int i</stdio.h>…
va_listという型があり、これを使って可変長引数リストを操作できる。 va_listは、SYSTEM_DATA_TYPES(7)に説明がある。 example #include <stdio.h> static void myprintf(char *first_arg, ...) { va_list ap; va_start(ap, first_arg); printf("%s\n", va_arg(ap, c</stdio.h>…