我正在尝试定义一个允许我传入 2 个数字以及一个运算符的宏。我希望宏对两个数字进行指定的操作并返回结果。
我的定义是:
#define GENERAL_OP(x,y,op) ((x) op (y))
当我打电话时效果很好
int result = GENERAL_OP(1, 2, -);
但是一旦我尝试向它传递一个字符(这是我在调用宏的通用函数中实际需要做的),如下例所示:
void Evaluate(char op)...
int result = GENERAL_OP(1, 2, op);