c语言程序编译过程包括哪四个

c语言程序编译过程包括哪四个,第1张

C语言编译过程分成四个步骤: 

1,由c文件到i文件,这个过程叫预处理 

2,由i文件到s文件,这个过程叫编译 

3,由s文件到o文件,这个过程叫汇编 

4,由o文件到可执行文件,这个过程叫链接

用gcc查看预处理过程(假设源文件叫helloc) 

gcc -o helloi helloc -E 

然后用 vi helloi 即可查看生成的预处理文件

按ESC 输入:$ 跳到预处理文件 可看到helloc源码

宏的本质:预处理阶段的单纯的字符串替换

预处理阶段,不考虑C语法

用编译原理的话来说呢,分成词法分析,语法分析,语义分析,中间代码生成,代码优化,目标代码生成这么几个阶段。

对c语言来说,一般只需要知道分成编译和连接两个阶段,编译阶段将源程序(c)转换成为目标代码(,一般是obj文件,至于具体过程就是上面说的那些阶段),连接阶段是把源程序转换成的目标代码(obj文件)与你程序里面调用的库函数对应的代码连接起来形成对应的可执行文件(exe文件)。

先进行程序开发的需求分析,接着画出系统建模所需要的用例图,类图等一系列的建模图形,而后开始分析需求找出所需要的 *** 作和数据字典,然后根据需求开发出所需要的系统程序 *** 作应用,在不断开发中不断更改不必要和不合理的需求,最后和需求达到一致,形成初步的程序。

首先建立源代码(生成c或者cpp文件),然后编译(生成o文件),最后链接(生成可执行文件,windows下是exe文件。)

举个例子:

lizicpp(编写代码文件)

lizio(编译后生成文件)

liziexe(链接后生成可执行文件)

词法分析阶段:读入源程序,对构成源程序的字符流进行扫描和分解,识别出单词,

语法分析阶段:机器通过词法分析,将单词序列分解成不同的语法短语,确定整个输入串能够构成语法上正确的程序。

语义分析阶段:检查源程序上有没有语义错误,在代码生成阶段收集类型信息

中间代码生成阶段:在进行了上述的语法分析和语义分析阶段的工作之后,有的编译程序将源程序变成一种内部表示形式

代码优化:这一阶段的任务是对前一阶段产生的中间代码进行变换或进行改造,目的是使生成的目标代码更为高效,即省时间和省空间

目标代码生成:这一阶段的任务是把中间代码变换成特定机器上的绝对指令代码或可重定位的指令代码或汇编指令

以上就是关于c语言程序编译过程包括哪四个全部的内容,包括:c语言程序编译过程包括哪四个、C语言编译执行的全过程是怎样的、一个C语言程序的开发过程有哪些等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10142146.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存