c语言2:关于变量
一:变量的命名规范
只能由字母,数字,下划线组成;;
区分大小写,
total
≠Total
≠TOTAL
;不能使用 C 关键字(如
int
、return
)和 当前作用域已存在的标识符;不能以数字开头
二:全局变量与局部变量
1:局部变量(local):写在函数/代码块内部,出了大括号就死。
2: 全局变量(global):写在所有函数之外,从程序启动一直活到程序结束。
局部变量:
定义位置:在函数或 `{}` 代码块内部,作用域在当前大括号 `{}`
生命周期 :进入大括号创建,出大括号销毁
存储区域 : 栈(stack)
默认值 不初始化 → 随机值
同名冲突 局部变量优先
全局变量 :
定义位置:所有函数之外(文件顶部) 作用域:整个程序(所有源文件)
生命周期 :main 之前创建,程序结束才销毁
存储区域 :静态/数据段(data/bss)
默认值 :不初始化 → 自动清零(数值为 0,指针为 NULL)
同名冲突 : 被局部变量优先时,可用 `extern` 或加 `::` 访问