C语言中如何区分预处理、动态库与静态库?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2324个文字,预计阅读时间需要10分钟。
目录 + 4.1 C语言编译过程 + 4.2 include指令 + 4.3 define指令 + 4.4 条件性编译 + 4.5 静态库 + 4.6 动态库 + 4.1 C语言编译过程 + 1. 预编译 + 将.c中的头文件展开、宏展开 + 生成.i文件
目录
4.1 c 语言编译过程
4.2 include
4.3 define
4.4 选择性编译
4.5 静态库
4.6 动态库
4.1 c 语言编译过程
1:预编译 将.c 中的头文件展开、宏展开 生成的文件是.i 文件
2:编译 将预处理之后的.i 文件生成 .s 汇编文件
3、汇编 将.s 汇编文件生成.o 目标文件
4、链接 将.o 文件链接成目标文件
Linux 下 GCC 编译器编译过程
gcc -E hello.c -o hello.i 1、预处理
gcc -S hello.i –o hello.s 2、编译
gcc -c hello.s -o hello.o 3、汇编
gcc hello.o -o hello_elf 4、链接
预处理有几种啊?
4.2 include
#include<>//用尖括号包含头文件,在系统指定的路径下找头文件
#include "" //用双引号包含头文件,先在当前目录下找头文件,找不到,
再到系统指定的路径下找。
注意:include 经常用来包含头文件,可以包含 .c 文件,但是大家不要包含.c
因为 include 包含的文件会在预编译被展开,如果一个.c 被包含多次,展开多次,会导致函数重复定义。 所以不要包含.c 文件。
本文共计2324个文字,预计阅读时间需要10分钟。
目录 + 4.1 C语言编译过程 + 4.2 include指令 + 4.3 define指令 + 4.4 条件性编译 + 4.5 静态库 + 4.6 动态库 + 4.1 C语言编译过程 + 1. 预编译 + 将.c中的头文件展开、宏展开 + 生成.i文件
目录
4.1 c 语言编译过程
4.2 include
4.3 define
4.4 选择性编译
4.5 静态库
4.6 动态库
4.1 c 语言编译过程
1:预编译 将.c 中的头文件展开、宏展开 生成的文件是.i 文件
2:编译 将预处理之后的.i 文件生成 .s 汇编文件
3、汇编 将.s 汇编文件生成.o 目标文件
4、链接 将.o 文件链接成目标文件
Linux 下 GCC 编译器编译过程
gcc -E hello.c -o hello.i 1、预处理
gcc -S hello.i –o hello.s 2、编译
gcc -c hello.s -o hello.o 3、汇编
gcc hello.o -o hello_elf 4、链接
预处理有几种啊?
4.2 include
#include<>//用尖括号包含头文件,在系统指定的路径下找头文件
#include "" //用双引号包含头文件,先在当前目录下找头文件,找不到,
再到系统指定的路径下找。
注意:include 经常用来包含头文件,可以包含 .c 文件,但是大家不要包含.c
因为 include 包含的文件会在预编译被展开,如果一个.c 被包含多次,展开多次,会导致函数重复定义。 所以不要包含.c 文件。

