初识关键字
- 一.关键字typedef
- 1.类型重命名
- 二.关键字static
- 1.修饰局部变量
- 2.修饰全局变量
- 3.修饰函数
一.关键字typedef
1.类型重命名
C语言为我们提供了一种类型重命名的功能,如下图所示。
可以看到我们用typedef将const int类型重命名为conin,
在接下来的定义ab变量打印后 输出的结果就会是一样的。
这里需要注意的是,typedef声明并没有创建一个新类型,它只是给已经存在的类型增加了一个名称而已。
typedef 还可以给数组、指针、结构体等类型定义别名。等我学到进阶再说。
二.关键字static
1.修饰局部变量
如何我们在test函数中用static修饰局部变量a运行结果会怎样呢。如下
为什么会出现这种区别呢。其实我们知道局部变量是进入作用域创建,出了作用域销毁的,这种普通的局部变量一般存储在栈区。而经过static修饰后的局部变量就会放在静态区所以在创建后,直道程序结束才会销毁,延长了局部变量的生命周期。
2.修饰全局变量
2. 修饰全局变量-静态全局变量
在不同文件下的全局变量我们可以使用extern进行引用,因为全局变量具有外部链接属性。
3.修饰函数
3. 修饰函数-静态函数
与全局变量相似 函数也具有外部链接属性,同样被static修饰后的函数也只能在同一文件下使用。