随笔分类 - C语言 / 预处理
摘要:库的介绍 库:将源文件生成二进制文件,只需要链接就可以生成可执行文件
阅读全文
摘要:条件编译的作用: 1、代码裁剪(不更改原有代码) #include <stdio.h> #include <string.h> void test01() { char str[128] = ""; fgets(str, sizeof(str), stdin); str[strlen(str) ‐
阅读全文
摘要:使用关键字define 定义就叫宏。例如: #define PI 3.14 (宏定义) 在预处理阶段,使用3.14替换所有出现 PI 的位置(宏展开) 注意:宏后面不要加分号 建议宏尽量用大写字母,用于和普通变量分开 宏的作用范围是从宏定义处开始到当前文件结束都有效(#undef可以结束宏) 宏没有
阅读全文
摘要:头文件包含 在预处理阶段,将头文件的内容原封不动的包含在目的文件中 例如:#include<head.h> (建议 < > 中包含的是系统头文件) < > 符号代表从系统指定目录寻找head.h头文件 例如:#include "head.h" (建议 " " 中包含的是自定义头文件) " " 符号代
阅读全文
摘要:编译过程:预处理、编译、汇编、链接 预处理:包括宏替换、删除注释、头文件包含、条件编译(这个阶段不会报语法错误) gcc -E hello.c -o hello.i 编译:将预处理后的文件编译成汇编文件(这个阶段会报语法错误) gcc -S hello.i -o hello.s 汇编:将汇编文件生成
阅读全文
摘要:普通局部变量 定义形式:在 {} 里面定义的普通变量叫普通局部变量 作用范围:所在的 {} 复合语句之间有效 生命周期:所在的 {} 复合语句执行期间有效 存储区域:栈区 注意事项: 普通局部变量,如果不初始化,内容就不确定 普通局部变量如果同名,就采用就近原则(尽量不要同名) 普通全局变量 定义形
阅读全文
摘要:进程:可执行文件从运行到结束,整个动态的过程就叫进程(在内存进行,占据内存空间) 在32位平台,每一个进程占4G空间(虚拟空间),系统为内存的每一个字节,分配一个32位的地址编号
阅读全文