【编译】过程+作用域

编译的过程

环境可以分为:编译环境(用于PC...)&&运行环境

编译分为以下四个过程

①预处理(预编译)

②编译

③汇编

④链接

可参考图示:


具体剖析四个步骤:

①预处理(预编译):文本处理

山区注视、解决预处理命令 例如:#define  #include #if #end ...均为预处理命令

②编译:查错

发现错误,包括语法、语义、词法、词义分析...

③汇编:翻译

④链接:找符号

每个文件均有符号表(对外的,便于查找)


变量作用域

文件作用域、函数作用域、块作用域

#include<stdio.h>

int x=10;//文件作用域 

void Fun()
{
	printf("%d\n",x);//10
}

int main()
{
	printf("%d\n",x);//10
	int x=100;//函数作用域 
	printf("%d\n",x);//100
    if(x>0)
    {
    	int x=50;//块作用域 
    	printf("%d\n",x);//50
    	x+=100; //此时此块内x的生命周期到头 
	}
	printf("%d\n",x);//100
    x+=100;
    Fun();//10
}

运行结果截图:

欢迎交流❤祝大家都能0 error(s),0 warning(s)ヾ(✿゚▽゚)ノ

猜你喜欢

转载自blog.csdn.net/VVVv_0427/article/details/80360957