C语言基础知识整理附录——关键字、转义字符、ASCLL码表、二维数组指针、指针类型、文件打开方式
数据类型关键字(17个) 变量属性:1.作用域(可见性)2.生存期(存在性)
自动变量和寄存器变量:离开函数后值不能被引用,也不存在
void 无 静态外部变量和外部变量:离开函数后变量值存在,能被引用
静态局部变量:离开函数后变量值存在,不能被引用
int 整型
char 字符
float 单精度浮点数
double 双精度浮点数
_Complex 复数
_Imaginary 虚数部分
enum 枚举
_bool 布尔
long 长
short 短
signed 有符号数
unsigned 无符号数
struct 结构体
union 共用体
inline 内联函数
restrict 类型限定符
===========================
控制语句关键字(12个)
if 判断(两个选择)
else 否则
switch 判断(多个选择)
case 选项
default 最终选项
while 循环(当)
do 循环(直到)
for 循环
break 退出内循环
continue 中断循环
goto 跳转
return 返回值
===========================
存储类型关键字(4个)
auto 自动局部变量
extern 全局变量
static 静态局部变量
register 内部寄存器
===========================
其它关键字(4个)
const 不可更改的常量
sizeof 字节长度
typedef 重新定义
volatile 变量在程序执行过程中可被隐含改变
===========================
long long int 双长整形
float_complex,double_complex,long long _complex 浮点型
转义字符
转义字符 |
字符值 |
输出结果 |
\’ |
一个单撇号(‘) |
具有此八进制码的字符 |
\’’ |
一个双撇号(‘’) |
输出此字符 |
\? |
一个问号(?) |
输出此字符 |
\\ |
一个反斜号(\) |
输出此字符 |
\a |
警告(alert) |
产生声音或者视觉信号 |
\b |
退格(backspace) |
将当前位置后退一个字符 |
\f |
换页(form feed) |
将当前位置移到下一页的开头 |
\n |
换行 |
将当前位置移到下一行的开头 |
\r |
回车(carriage return) |
将当前位置移到本行的开头 |
\t |
水平制表符 |
将当前位置移到下一个tab位置 |
\v |
垂直制表符 |
将当前位置移到下一个垂直制表对齐点 |
\o、\oo、\ooo其中一个o代表一个八进制数字 |
与该八进制码对应的ASCII字符 |
与该八进制码对应的字符 |
\xh[h…]其中h代表一个十六进制数字 |
与该十六进制码对应的ASCII字符 |
与该十六进制码对应的字符 |
ASCII码表
二维数组a的有关指针
表示形式 |
含义 |
地址 |
a |
二维数组名,指向一维数组a[0],即0行首地址 |
2000 |
a[0],*(a+0),*a |
0行0列元素地址 |
2000 |
a+1,&a[1] |
1行首地址 |
2016 |
a[1],*(a+1) |
1行0列元素a[1][0]的地址 |
2016 |
a[1]+2,*(a+1)+2,&a[1][2] |
1行2列元素a[1][2]的地址 |
2024 |
*(a[1]+2),*(*(a+1)+2),a[1][2] |
1行2列元素a[1][2]的值 |
元素值为13 |
指针变量的类型及含义
变量定义 |
类型表示 |
含义 |
int i; |
int |
定义整型变量i |
int *p; |
int * |
定义p为指向整型数据的指针变量 |
int a[5]; |
int [5] |
定义整型数组a,它有5个元素 |
int *p[4]; |
int *[4] |
定义指针数组p,它由4个指向整型数据的指针元素组成 |
int (*p) [4]; |
int (*) [4] |
p为指向包含4个元素的一维数组的指针变量 |
int f( ); |
int ( ) |
f为返回整型函数值的函数 |
int *p( ); |
int *( ) |
p为返回一个指针的函数,该指针指向整型数据 |
int (*p)( ); |
int (*)( ) |
p为指向函数的指针,该函数返回一个整型值 |
int **p; |
int ** |
p是一个指针变量,它指向一个指向整型数据的指针变量 |
void *p; |
void * |
p是一个指针变量,基类型为void(空类型),不指向具体的对象 |
使用文件方式
文件使用方式 |
含义 |
如果指定的文件不存在 |
“r”(只读) |
为了输入数据,打开一个已存在的文本文件 |
出错 |
“w”(只写) |
为了输出数据,打开一个文本文件 |
建立新文件 |
“a”(追加) |
向文本文件尾添加数据 |
出错 |
“rb”(只读) |
为了输入数据,打开一个二进制文件 |
出错 |
“wb”(只写) |
为了输出数据,打开一个二进制文件 |
建立新文件 |
“ab”(追加) |
向二进制文件尾添加数据 |
出错 |
“r+”(读写) |
为了读和写,打开一个文本文件 |
出错 |
“w+”(读写) |
为了读和写,建立一个新的文本文件 |
建立新文件 |
“a+”(读写) |
为了读和写,打开一个文本文件 |
出错 |
“rb+”(读写) |
为了读和写,打开一个二进制文件 |
出错 |
“wb+”(读写) |
为了读和写,建立一个新的二进制文件 |
建立新文件 |
“ab+”(读写) |
为读写打开一个二进制文件 |
出错 |