社区
C语言
帖子详情
c语言从哪里开始编译的?
jydjdongjie
2011-09-15 06:49:50
都知道C是从main()开始执行的,但是没有关心过从哪里开始编译。
...全文
395
17
打赏
收藏
c语言从哪里开始编译的?
都知道C是从main()开始执行的,但是没有关心过从哪里开始编译。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jydjdongjie
2011-09-20
打赏
举报
回复
呵呵,第一次发帖就得到这么多热心人的帮忙!谢谢各位了!
看了大家的回答,我想起来了:以前看过一次反汇编,确实是从头开始编译的。
Athenacle_
2011-09-16
打赏
举报
回复
[Quote=引用 6 楼 micropentium6 的回复:]
Correct me if I am wrong
GCC compilation process:
1. Pre-processing through CPP: c source cods
resolve dependencies, text substitution (macro,include), output is a single file
2. GCC Par……
[/Quote]
这是编译的步骤:预编译→词法→语法→语义→中间代码(RTL)生成→代码优化→汇编→链接;
不过就LZ的意思,我说,编译是从预处理后的文件的第一个字母开始编译的
小笨和漂向北方
2011-09-16
打赏
举报
回复
a good 101 reference could be found here:
http://www.tenouk.com/ModuleW.html
小笨和漂向北方
2011-09-16
打赏
举报
回复
Correct me if I am wrong
GCC compilation process:
1. Pre-processing through CPP: c source cods
resolve dependencies, text substitution (macro,include), output is a single file
2. GCC Parse: output from CPP
Parse the source and create the tree structures in RTL (register transfer language) output is RTL
3. GCC Code Optimization: RTL tree
Optimize code through all kind of criteria: Constant Folding, Code Elimination... output is in assembly code
4. ar: assembly code
generate object files in binary format
5. ld: object files
relocate object code, add other object files/symbol table, link libraries. output is the executable file
AndyZhang
2011-09-16
打赏
举报
回复
反汇编一下,看汇编语言就知道从哪里开始了
赵4老师
2011-09-16
打赏
举报
回复
从.c或.cpp的第一个字符。
赵4老师
2011-09-16
打赏
举报
回复
《程序员的自我修养--链接、装载与库》
txzsp
2011-09-16
打赏
举报
回复
流程上是按照项目文件进行对每个文件逐个编译生成.obj文件的。
绿野耕夫
2011-09-16
打赏
举报
回复
《编译原理》或者《程序员的自我修养--链接、装载与库》
后一本书看起来有趣味些~~
如此的肤浅
2011-09-16
打赏
举报
回复
其实我也在想这个问题
shiter
2011-09-16
打赏
举报
回复
[Quote=引用 12 楼 zhao4zhong1 的回复:]
《程序员的自我修养--链接、装载与库》
[/Quote]
作者???
hondely
2011-09-16
打赏
举报
回复
路过 学习下
afreet2006
2011-09-15
打赏
举报
回复
不知道, 关注中
Athenacle_
2011-09-15
打赏
举报
回复
从头开始编译的。。
其实从main开始执行是链接器的事,你也可以指定从其他的函数开始执行,对编译器来说,main是再普通不过的一个函数而已。。
不过我可以确定的告诉你,编译的话,是从头开始编译的,,,具体请看编译原理
AnYidan
2011-09-15
打赏
举报
回复
[Quote=引用 1 楼 zmlovelx 的回复:]
这个得看编译原理了.
预编译--编译--汇编--链接.
[/Quote]
编译原理
帅得不敢出门
2011-09-15
打赏
举报
回复
main之前还有许多工作的.
全局域的变量(包括静态变量)初始化等工作都是在main之前执行的
帅得不敢出门
2011-09-15
打赏
举报
回复
这个得看编译原理了.
预编译--编译--汇编--链接.
让你用
C语言
实现简单的
编译
器,从头开始写
本文探讨了学习
编译
原理的重要性,并通过一个简单的
C语言
编译
器实例,展示了如何从头开始编写
编译
器。作者强调,尽管
编译
原理可能抽象,但它能帮助理解编程语言的本质,涉及的算法和思想对程序员的成长大有裨益。文中提供了
编译
器源代码,能够将特定输入转换为“你好世界”的输出。
从零开始学编程之
C语言
(3)——
C语言
编译
器
本文详细介绍了如何使用CodeBlocks进行
C语言
编程,包括下载安装、创建项目、
编译
与执行C程序的全过程,并深入解析了C程序的
编译
流程与环境配置。
从零开始学
C语言
第一课——linux
编译
环境搭建+hello world!
这篇博客介绍了如何在Linux环境下开始
C语言
的学习,从安装虚拟机到配置SSH连接,使用xshell和vim编辑器,并通过gcc
编译
器
编译
运行Hello World程序。强调了使用Linux作为开发环境的重要性,以及基本的代码编写、
编译
和执行流程。
从零开始:选择并配置你的
C语言
编译
器
学习
C语言
编程,选择合适
编译
器很重要。本文介绍了GCC、Clang、MSVC、MinGW、TCC等主流
C语言
编译
器,详细说明了它们在Linux、Windows、macOS等不同平台上的安装和使用方法,助你高效进行
C语言
学习和项目开发。
Xcode
编译
C语言
| 从零开始配置与
编译
C语言
项目
本文介绍如何在Xcode中配置并
编译
C语言
项目,涵盖创建命令行工具工程、选择
C语言
模板及编写基础程序的方法,适用于初学者入门iOS与macOS平台的
C语言
开发。
C语言
70,039
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章