C语言关键字

首先看看这份我总结的这份C语言大纲,大概也就知道C语言的关键字处在那个地位了,同时也可以作为一份复习的资料,虽然C语言看起来就这么一些知识点,但是我只能说我看到的知识C语言的冰山一角,想要彻底了解C语言,还是需要多看看书,甚至可以尝试去写一个C的编译器,也算是一大壮举了,语言的特性只有编译器的设计者最清楚!

mark

今天从关键字开始说起: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:这个关键字的作用是防止编译器将变量优化为寄存器变量,保证变量的内存可见性。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份