总结

C 语言总结

学过的章节(共计 24 章)

章节
内容
章节
内容
1
开发环境的搭建
13
字符串
2
初步认识 C 语言
14
编译预处理
3
基础数据类型
15
函数
4
基本输入输出函数
16
结构体
5
运算符与表达式
17
联合体
6
选择语句
18
枚举
7
迭代语句
19
C 语言高级语法
8
跳转语句
20
动态内存管理
9
表达式语句和空语句
21
文件操作
10
其它语句
22
动态库和静态库
11
指针
23
C 语言标准库
12
数组
24
校园信息管理系统项目

以下是上述章节学过的内容。

运算符和表达式

名称
符号
后置自增/减
++ --
函数调用
()
数组下标
[]
结构体(联合体)成员访问
.
结构体(联合体)指针成员访问
->
复合字面值
(type){list}
前置自增/减
++ --
正负号
+(正号) -(负号)
逻辑非
!
按位取反
~
强制类型转换
(type)
解引用
*
取地址
&
求占用字节数
sizeof
查询对齐
_Alignof
乘、除、取模(求余数)
* / %
加、减
+ -
左移、右移
<< >>
关系运算符比较
< <= > >= == !=
位运算
& ^ |
逻辑运算
&& ||
条件运算符(三元运算符)
?:
赋值运算符
= += -= *= /= %= <<= >>= &= ^= \|=
逗号运算符
,

选择语句

if 语句

if ( expression ) statement
if ( expression ) statement else statement

switch 语句

switch ( expression ) statement

迭代语句

for 语句

for ( expression ; expression ; expression ) statement
for ( declaration expression ; expression ) statement

while 语句

while ( expression ) statement

do-while语句

do statement while ( expression ) ;

跳转语句

break 语句

break;

continue 语句

continue;

goto 语句

goto 标识符(标签);

return 语句

return [表达式];

其他语句

表达式语句

表达式;

空语句

;

复合语句

{
    ...
}

标签语句

identifier : statement
case constant-expression : statement
default : statement

编译预处理指令

文件包含指令

#include <pathname>
#include "pathname"

宏定义指令

#define 标识符 [宏内容]
#define 标识符(...) [宏内容]

取消宏定义指令

#undef 标识符

条件编译指令

#if 常量表达式
...
#elif  常量表达式
...
#else
...
#endif
#ifdef 宏名
...
#elif  常量表达式
...
#else
...
#endif
#ifndef 宏名
...
#elif  常量表达式
...
#else
...
#endif

停止编译报错指令

#error [字符串]

编译参数设定

#pragma pack(n)
#pragma pack()

函数

函数定义

返回值的数据类型 函数名(数据类型1 形参变量1, 数据类型2 形参变量2, ...) {
    语句
}

函数调用

函数名(表达式1, 表达式2, ...)

函数声明

返回值的类型 函数名(数据类型1 [变量名1], 数据类型2 [变量名2], ...);

函数说明符

inline
_Noreturn

存储类别说明符

typedef
extern
static
_Thread_local (未讲解)
auto
register

类型修饰词

const
restrict
volatile
_Atomic (未讲解)

类型说明符

void
char
short
int
long
float
double
signed
unsigned
_Bool (未讲解)
_Complex (未讲解)
atomic-type-specifier (未讲解)
struct-or-union-specifier  (结构体或联合体)
enum-specifier  (枚举类型说明符)
typedef-name (类型别名)

结构体/联合体类型

struct/union [结构体或联合体名] {
    数据类型1  成员变量名1[: 占用位宽1], 成员变量名2[: 占用位宽2], ...;
    数据类型2  成员变量名4;
    // ... 其它成员变量
}[变量名1[={初始化列表1}]][,变量名2[={初始化列表2}], ...];

枚举类型

enum [枚举类型名] {
    枚举常量名1[ = 整数常量表达式1],
    枚举常量名2[ = 整数常量表达式2],
    ...
} [变量名 [= 整数表达式]];

标准库

类型
函数
标准输入输出 stdio.h
printfscanffopenfclosefgetcfgetsfscanffputc
fputsfprintffreadfwriteftellfseekrewind
数学函数 math.h
sincostanasinacosatansqrtpowexploglog10
fabsceilfloorfmod
时间函数 time.h
timectimegmtimelocaltimemktimeasctimestrftime
通用工具函数 stdlib.h
randsrandmalloccallocreallocfreeabortexit
atexitatoiatolatollatofsystemabs
字符分类和转换 ctype.h
isalnumisalphaiscntrlisdigitisgraphislowerisprint
ispunctisspaceisupperisxdigitisasciiisblank
touppertolower
标准宏定义 stddef.h
NULLsize_t