c语言,说宏展开是在编译时进行的,啥意思?啥叫编译时进行的?

如题所述

c语言编写出来的代码叫源代码,是供人看的,如果想让机器执行,需要转换成机器语言,这个转换过程就叫编译。
在c语言中定义的宏,在编译时,会展开(或叫替换)为实际的语句,如:
#define MAX 100
void main()
{
int a=MAX ;
printf("a=%d\n", a );
}
这里MAX是个宏,当编译时,这段代码就会变成:
void main()
{
int a=100; //这里的MAX会变成100
printf("a=%d\n", a );
}
这就是宏展开、宏替换,然后编译器,按这样子的源代码进行编译,生成执行程序追问

那说的程序运行时进行的是什莫意思?

是生成机器语言后,进行的么?

追答

是的,是指机器码程序在执行过程时,发生的事,就叫运行时 running time

温馨提示:答案为网友推荐,仅供参考
相似回答