1
如果我需要我的程序的简单功能,可以说,以确定两个数的最大值,是它更好地定义它想:有什么更好? #定义GetMax的(A,B)或INT GetMax的(A,B)
#define getmax(a, b) ((a)>(b)?(a):(b))
或
int getmax(int a, int b)
{
return a>b?a:b;
}
我做了一个简单的程序,打印getmax(a, b)
#include<stdio.h>
#define getmax(a, b) ((a)>(b)?(a):(b))
int main()
{
int i, j;
for(i = 0; i < 100; i++)
for(j = 0; j < 100; j++)
printf("%d\n", getmax(i, j));
return 0;
}
和
#include<stdio.h>
int getmax(int a, int b)
{
return a>b?a:b;
}
int main()
{
int i, j;
for(i = 0; i < 100; i++)
for(j = 0; j < 100; j++)
printf("%d\n", getmax(i, j));
return 0;
}
我测试了这两个程序10次并计算了平均运行时间。第一个方案的平均值是0.8880,第二个方案的平均值是0.8575。有什么更好的使用和运行有什么不同吗?
这不是该问题的重复。这是问关于c函数,而不是内联C++函数 –