目录
1. 框架、默认数据类型
2. 分支结构
(1). if ... else ...
(2). switch ... case ...
3. 循环结构
(1). while
(2). for
(3). do ... while
4. 函数
(1). 库函数
(1). 字符串相关函数
(2). 内存相关函数
(2). 自定义函数
(3). 递归
5. 数组
(0). 字符数组
(1). 一维数组
(2). 二维数组
二维数组与一维数组的关系
(3). sizeof 关键字(运算符) 在数组名上的应用
6. 自定义数据类型
(1). 结构体
结构体大小的计算?
(2). 联合体
(3). 共用体
(4). 枚举
7. 指针
(1). 指针的含义
(2). 一级指针
(3). 野指针
(4). 二级指针
8. 动态内存管理
9. 文件操作
通过库函数操作文件
10. 宏和预处理
宏?
预处理做了什么?
11. 编译四步骤
(0). 内存分区
(1). 预编译
(2). 编译
(3). 汇编
(4). 链接
1. 框架、默认数据类型
2. 分支结构
(1). if ... else ...
悬空 else 问题
(2). switch ... case ...
switch () 括号内的类型 -- 整形家族所有:char、short、int、long
3. 循环结构
(1). while
(2). for
(3). do ... while
执行顺序?
4. 函数
(1). 库函数
(1). 字符串相关函数
strcmp
strcpy
strlen
strcat
strncpy
strncat
strncmp
strstr
strtok
strerror
(2). 内存相关函数
memcpy
memmove
memset
memcmp
(2). 自定义函数
(3). 递归
5. 数组
(0). 字符数组
(1). 一维数组
(2). 二维数组
二维数组与一维数组的关系
(3). sizeof 关键字(运算符) 在数组名上的应用
6. 自定义数据类型
(1). 结构体
结构体大小的计算?
默认对其数
(2). 联合体
(3). 共用体
(4). 枚举
7. 指针
(1). 指针的含义
(2). 一级指针
(3). 野指针
(4). 二级指针
8. 动态内存管理
malloc
calloc
realloc
free
9. 文件操作
通过库函数操作文件
fopen
fclose
fread
fwrite
...
10. 宏和预处理
宏?
#define
预处理做了什么?
头文件、替换、注释 ...
11. 编译四步骤
(0). 内存分区
进程的虚拟地址空间
(1). 预编译
(2). 编译
(3). 汇编
(4). 链接