#define INFORMATION \
printf("行数:%d---位置:%s---日期:%s---时间:%s\n",\
__LINE__, __FILE__, __DATE__, __TIME__)
#define name_cat(str1,str2) str1##str2
#define STC(NAME) printf("本次输出"#NAME"的值为%d\n",NAME)
#define TEST(a) a = 1 + 2 + 3 + 4 + 7 + 55 + 1 * 48 * 35 * 12 * 100000
int main(){
int test(int);
int i = 0, aabb = i;
clock_t start, finish;
start = clock();
for (i = 0; i < 10000; i++){
//printf("%3d", i);
TEST(aabb);
}
finish = clock();
printf("\n宏所执行的时间为%f。\n", (double)(finish - start));
start = clock();
for (i = 0; i < 10000; i++){
//printf("%3d",i);
test(aabb);
}
finish = clock();
printf("\n函数所执行的时间为%f。\n", (double)(finish - start));
system("pause");
return 0;
}
int test(int aabb){
aabb = 1 + 2 + 3 + 4 + 7 + 55 + 1 * 48 * 35 * 12 * 100000;
return aabb;
}代码执行时间计算(宏和函数的执行时间差别)
最新推荐文章于 2021-11-27 23:53:35 发布
本文通过一个简单的C语言程序演示了使用宏定义与函数在执行效率上的差异。通过对相同操作采用宏定义和函数实现的方式,并利用clock计时来测量两者执行10000次所需的时间,以此来直观展示宏定义在某些场景下相较于函数调用可能具有的性能优势。
852

被折叠的 条评论
为什么被折叠?



