目录
前言
1. 程序的运行
2. 预定义符号
3. #difine
3.1 定义常量
3.2 给类型定义别名
3.3 自定义一些关键字
3.4 定义一个代码片段
3.5 #undefine
4. 条件编译
总结
前言
程序具体是怎么运行起来的呢?会涉及到那些操作呢?预处理又是在干什么?
1. 程序的运行
分为两个步骤
1.把 .c 文件变成一个可执行文件
2.执行该可执行文件。
编译又可以分为以下几个阶段
1.预处理。编译器先对程序进行一个初步的处理,执行代码中的预处理指令。(以#开头的都是预处理指令)
2.编译。把c语言文件变成汇编语言文件
3.汇编。把汇编语言文件转换成为二进制的机器指令
4.链接。每个.c文件都会生成对应的机器指令文件,链接就是将这些文件合并起来。
2. 预定义符号
编译器提前定义好的符号
#includeint main() { printf("%sn",__FILE__);//进行编译的源文件 printf("%dn",__LINE__);//文件当前的行号 printf("%sn",__DATE__);//文件被编译的日期 printf("%sn",__TIME__);//文件被编译的时间 return 0; }
3. #difine
3.1 定义常量
#define pi 3.14
不解释
3.2 给类型定义别名
#define uint unsigned int
不解释
3.3 自定义一些关键字
#define 并且 &&
不解释
3.4 定义一个代码片段
#define ADD(x,y) x+y
不解释
3.5 #undefine
移除一个宏定义
4. 条件编译
典型应用有3个分别是一份代码同时兼容开发环境和发布环境、一份代码兼容不同的系统、防止头文件被重复包含、多行注释
#include#define test 0 int main() { #if test printf("该句子被编译n"); #endif #if 0 这 是 多 行 注 释 #endif return 0; }
总结
c语言部分知识点已经基本学完了,接下来就要好好刷题,巩固知识。培养自己的编程思维。



