导航

【C语言】基础(八)全局变量、const关键字

Posted on 2017-08-09 15:04  sucre_2  阅读(1544)  评论(0编辑  收藏  举报

全局变量、const关键字

程序的内存区域:
代码区:存放程序代码和各个函数
数据区:存放程序中的全局变量和静态变量,常量 (不能修改)
栈区:存放局部变量(作用于定义开始到该函数结束)和形参
堆区:存放动态数据 很大 需要用指针访问


局部变量也称为内部变量,只能在定义他的函数内部使用 定义在函数开头
调用结束后内存释放


全局变量对于整个程序都是可见的 从定义到程序到结束
跟局部变量可重名,同时出现时,局部标量优先级高
不初始化时默认初始化为0

静态局部变量 static
static 修饰局部变量时:
1、只会被初始化一次,在第一次进入函数时进行初始化操作。后续不进行初始化
2、局部变量被调用后不会被释放内存

static 修饰全局变量时:
1、限定全局变量的可用范围在当前源文件内。作用域不能被修改


使用 extern 前置声明全局变量(找不到声明往后找)

const 关键词

const 修饰变量,变量不能被赋值。可以把一块内存声明为只读
必须进行初始化,不然没有意义
可以修饰函数形参