![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
链接
文章平均质量分 72
Pandada。
这个作者很懒,什么都没留下…
展开
-
目标文件相关
目标文件 目标文件的格式 目标文件就是源代码编译后但未进行链接的那些中间文件(win上的.obj文件和linux上的.o文件),它跟可执行文件的内容和结构相似。 动态链接库(win上的.dll和linux的.so)以及静态链接库(win的.lib和linux的.a)都按照可执行文件格式存储。 file foobar.o file /bin/bash file /lib/ld-2.6.1.so 目标文件的结构 目标文件将不同属性的信息按照节或者段存储。 源代码编译后的机器指令经常被放在代码段中,常见的名字原创 2021-06-18 00:38:43 · 184 阅读 · 1 评论 -
编译和链接
编译和链接 C语言的编译过程 预编译 gcc -E hello.c -o hello.i g++ hello.c > hello.i 预编译过程主要处理#开头的预编译指令。 处理规则: 删除所有#define,并展开所有的宏定义 处理所有条件预编译指令 处理#include预编译指令,并将被包含的文件插入到该预编译指令的位置 删除所有注释//和/* 添加行号和文件名标志 保留所有的#pragma编译器指令 编译 编译指把预处理完的文件进行一系列的词法分析,语法分析,语义分析和优化后生成相应的汇编代原创 2021-06-09 00:50:31 · 47 阅读 · 0 评论