monday, 28th, feb, 2022
//常见关键字
//c语言提供的不能自己创建关键字
//变量名不能是关键字
int main()
{
int char;//错误,变量名不能是关键字
return 0;
}
int main()
{
int a = 10 ;//a这个局部变量是自动创建,自动销毁的-属于自动变量auto,完整表达为:
auto int a = 10,但因为自带自动属性,所以一般省略auto,直接写成int a = 10
//auto 新的c语言语法中也有其他用法
register int num=100;//建议num的值存放在寄存器中,但是否真的存在了register是由编译器最终决定的
//大量/频繁被使用的数据,放在寄存器中,提升效率(及时不申明,编译器也会据情况自动存入,所以register的申明意义不是很大了)
return 0;
}
//auto-自动的,每个局部变量都是auto修饰的
//default-默认
//enum-枚举
//extern-用来申明外部符号
//register-寄存器关键字
计算机中数据可以存储到哪里?
寄存器、高速缓存、内存、硬盘、网盘(连网)
//singhed 有符号的 unsighed 无符号的
//static-静态的
//union-联合体(共用体)
//void- 无、空
//volatile-c语言暂时不讲
//typedef-类型重定义
//将较长的名称定义一个别名,方便后续使用
typedef unsigned int u_int;//将unsigned int 取个别名为u_int
int main()
{
unsigned int num = 100;//等同于 u_int num = 100;
return 0;
}
//static-静态的
//static可修饰局部变量
程序从主函数intmain开始执行,执行到test()
此时的a为test()函数的局部变量,生命周期只在test()这个范围内,跳出test()后,a的结果被销毁,重新执行test()时a以初始值开始,因此程序结果是会连续打印10个2
加了static后,a的生命周期延长,在出test()函数后不会被销毁,依然保留本次运算的结果,以待下次使用
sattic的生命周期和全局变量一样长,只有程序结束了才会结束,因此都放于静态区(改变了存储区)
//extern声明外部符号
//static修饰全局变量
//static修饰函数