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++函數 –