Есть ли способ проверить во время компиляции макроса c, что аргумент является массивом?
например, в этих двух макросах:
#define CLEAN_ARRAY(arr) \
do { \
bzero(arr, sizeof(arr)); \
} while (0)
и
#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
Я попробовал что-то, используя макрос CTC(X)
, но не смог найти способ проверить/предупредить, если arr
не является массивом.