В C нам часто приходится запускать такой код
if (! somefun(x, y, z)) {
perror("somefun")
}
Можно ли создать макрос, который используется следующим образом:
#define chkerr ...
chkerr(somefun(x, y, z));
будет скомпилирован с указанным выше?
Я уже знаю, что могу использовать макрос __VA_ARGS__
, но это потребовало бы, чтобы я назвал его как
chkerr(somefun, x, y, z)