c语言在线编译器【c语言编译器】

阅读: 43 | 发布时间:2023-06-19 10:48:04

从C语言源代码编写完成到计算机能够执行的程序,大致经过预编译、编译、汇编、链接四个过程,每个过程都会输出一个文件。

预编译

预编译过程的目标是把C源文件变成中间代码,具体内容是:

包含的头文件替换成对应的函数声明宏定义的展开,进行字符串的替换处理条件编译指令,如#ifdef/#else/#ifndef/#endif等删除代码中的注释文件添加行号和标识

预编译指令

gcc -E hello.c -o hello.i编译

编译过程的目标是把中间代码变成汇编文件,具体内容是:

对预处理文件进行词法分析,语法分析和语义分析

词法分析:分析关键字,标示符,立即数等是否合法语法分析:分析表达式是否遵循语法规则语义分析:在语法分析的基础上进一步分析表达式是否合法

分析结束后进行代码优化生成相应的汇编代码文件

编译指令

gcc -S hello.i -o hello.s汇编

汇编过程的目标是把汇编文件变成二进制文件,具体内容是:

汇编器将汇编代码转变为机器的可以执行指令每条汇编语句几乎都对应一条机器指令

汇编指令

gcc -c hello.s -o hello.o链接

链接过程的目标是把二进制文件变成可执行程序,具体内容是:

将二进制文件所用到的外部库绑定才能正常运行

链接指令

gcc hello.o -o hello.out运行可执行程序

计算机执行最终生成的文件hello.out(可执行程序),输出结果如下:

logo设计网(www.shejilogo.com),专业的logo免费设计在线生成网站,全自动智能化logo设计,商标设计,logo在线生成!

欢迎使用logo设计网制作属于您公司自己的logo,不仅专业而且经济实惠,全方位满足您公司品牌化、视觉化的需求。

版权声明:logo设计网所有作品均由本公司及/或权利人授权发布,仅供网友学习交流,未经上传用户书面授权,请勿作他用。若您 的权利被侵害,请联系 fzypzl@outlook.com, 提交 侵权投诉>

在线智能LOGO设计

小提示:按键盘 Ctrl + D 也能收藏哦!
¥100
返回顶部
二维码失效
请点击刷新
关闭
保存您的LOGO