概述
auto 用来定义自申请内存、自定释放内存的变量(局部、块变量)。
不加就代表加,与 signed 一样。
注意:全局变量前不能使用。
const 是对变量提供一种保护,但它不是常量。
变量一旦初始化后,就不能再显示修改他的值。
const 修饰被初始化过的全局变量才是真正的常量,一旦修改就出现段错误,因为编译器把这种全局变量的存储位置划分成text。
static 限制作用域(全局变量函数),改变存储位置,延长生命周期(局部、块变量)。
修饰变量:
全局变量:限制全局变量的作用域,只能在它所在的.c内使用
块、局部变量:改变存储位置,由栈改为bss或data,但作用域没有变,并且延长生命周期。
修饰函数:
const int func(void);const 就是的函数的返回值。
static int func(void); static 修饰的是函数。
由普通函数(外部函数)变成内部函数,只能在.c文件内使用。
register 申请把变量存储位置更改为寄存器。因为寄存器有限不一定成功。
volatile (不稳定的,易变的)修饰线程间的共享的变量,或者硬件编程时使用
如果一个变量的值没有被显示的修改,编译器不会再次从内存中读取它的数值,而是直接使用上次的读取结果(优化)。
volatile 的功能就是告诉编译器的值会随时变化,不要优化它的取值过程(每次用到变量时都去内存中获取它的值)。
int num = 10 ;
num == num //永远为真
volatile int num = 10 ;
num == num //可能为假
extern 声明变量,多文件中共享全局变量时使用,谁声明谁使用。
定义:创建变量名,分配存储空间。
声明:创建变量名。
a.c中定义一个全局变量,b.c中如果想使用。
最后
以上就是神勇戒指为你收集整理的学习总结:修饰变量的关键词的全部内容,希望文章能够帮你解决学习总结:修饰变量的关键词所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复