定义一个带参数的宏,求出三个数中最大的一个数,并进行验证。

2025-02-22 16:07:52
推荐回答(2个)
回答1:

如下代码 注意三目运算符 可以是 => 表达式1?表达式2:表达式3

#define MAX1(a,b,c) ((a)>(b)?(a>c?a:c):(b>c?b:c))
int main(int argc, char* argv[])
{
int a = 5,
b = 4,
c = 6;
int i = MAX1(a,b,c);
return 0;
}

回答2:

可以的,(?:)运算符可以迭代的。楼主的代码中有三个 if 语句,肯定就是打出三个结果啊。
#include
#define MAX(a,b,c) ((a>b)?(a>c?a:c):(b>c?b:c))
int main()
{
int a = 4,b = 5, c = 6;
cout<。。。。。。