わさっきhb

大学(教育研究)とか ,親馬鹿とか,和歌山とか,とか,とか.

関数形式マクロは演算子を引数に取れる

#include <stdio.h>

#define op(x, y, z) ((x) y (z))
#define opp(x, y, z) (printf("%d " #y " %d = %d\n", x, z, op(x, y, z)))

int main(void)
{
  printf("%d\n", op(1, +, 2));
  opp(1, +, 2);
  return 0;
}