C语言关键字
首先看看这份我总结的这份C语言大纲,大概也就知道C语言的关键字处在那个地位了,同时也可以作为一份复习的资料,虽然C语言看起来就这么一些知识点,但是我只能说我看到的知识C语言的冰山一角,想要彻底了解C语言,还是需要多看看书,甚至可以尝试去写一个C的编译器,也算是一大壮举了,语言的特性只有编译器的设计者最清楚!
今天从关键字开始说起:C语言的关键字共有32个,根据关键字作用,可分其为数据类型关键字、控制语句关键字、存储类型关键字和其它关键字四类。
1、数据类型关键字(12个):
- char :声明字符型变量或函数
- double :声明双精度变量或函数
- enum :声明枚举类型
- float:声明浮点型变量或函数
- int: 声明整型变量或函数
- long :声明长整型变量或函数
- short :声明短整型变量或函数
- signed:声明有符号类型变量或函数
- struct:声明结构体变量或函数
- union:声明联合数据类型
- unsigned:声明无符号类型变量或函数
- void :声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)
2、控制语句关键字(12个): 循环语句
- for:一种循环语句(可意会不可言传)
- do :循环语句的循环体
- while :循环语句的循环条件
- break:跳出当前循环
- continue:结束当前循环,开始下一轮循环 条件语句
- if: 条件语句
- else :条件语句否定分支(与 if 连用)
- goto:无条件跳转语句 选择语句
- switch :用于开关语句
- case:开关语句分支
- default:开关语句中的“其他”分支 返回语句
- return :子程序返回语句(可以带参数,也看不带参数)
3、存储类型关键字(4个)
- auto :声明自动变量 一般不使用
- extern:声明变量是在其他文件正声明(也可以看做是引用变量)
- register:声明寄存器变量
- static :声明静态变量 ,static修饰全局变量的时候改变全局变量作用范围,是的全局变量只能在当前文件使用
4、其它关键字(4个):
- const :声明只读变量
- sizeof:计算数据类型长度
- typedef:用以给数据类型取别名
- volatile:说明变量在程序执行中可被隐含地改变
特殊说明一下几个原来不熟悉的关键字:
- union :声明联合体类型
- extern:声明变量是在其他文件正声明(也可以看做是引用变量)
- register:声明寄存器变量,但只是建议编译器对变量声明为寄存器变量,这完全取决于编译器,有时就算不声明register,编译器也会把变量声明为寄存器变量来提高运算效率
- volatile:这个关键字的作用是防止编译器将变量优化为寄存器变量,保证变量的内存可见性。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份