C语言提供的关键字,不能自己创建关键字,关键字不能做变量名
常见关键字
auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while
- auto:自动的,每个局部变量都是 auto 修饰的
#include <stdio.h>
int main()
{
int a = 10;//自动创建 自动销毁
//auto 省略掉了
return 0;
}
- extern:是用来声明外部符号的
- register:寄存器关键字,用它声明的变量建议放到寄存器中
计算机中的数据数据可以存放到哪里呢?
寄存器 更小
高速缓存 几十MB
内存 8G、16G、32G
硬盘 500G、1T、2T
网盘 2T
从下往上造假越高,速度越快,但是空间越小。
随着CPU的发展,内存的处理速度慢慢跟不上CPU的速度,从而导致CPU的运行效率降低,从而设计了寄存器和高速缓存,使得CPU每次处理数据时,直接从寄存器和高速缓存中读取,提高了CPU的运行效率。
#include <stdio.h>
int main()
{
register int num = 10;//建议 num 的值放在寄存器中
//只是建议,是否放在寄存器中看编译器自己的判断
return 0;
}
有时候我们不写register,编译器自己会分析,自动将一些经常使用到的数据放到寄存器中去。
- signed:有符号的
- unsigned:无符号的
- static:静态的
- union:联合体、共用体
- viod:无、空
define 是不是关键字?
include 是不是关键字?
都不是关键字,这两个是预处理指令