C语言:特殊点
2024-09-06 05:05:58
编译器给变量分配内存
在函数外部定义的变量叫做全局变量(Global Variable),在函数内部定义的变量叫做局部变量(Local Variable)
一个变量,即使不给它赋值,它也会有一个默认的值,这个值就是默认初始值。
对于全局变量,它的默认初始值始终是 0,因为全局变量存储在内存分区中的全局数据区,这个区域中的数据在程序载入内存后会被初始化为 0。而对于局部变量,C语言并没有规定它的默认初始值是什么,所以不同的编译器进行了不同的扩展,有的编译器会初始化为 0,有的编译器放任不管,爱是什么就是什么。
在 main 函数中定义的变量也是局部变量,只能在 main 函数中使用;同时,main 函数中也不能使用其它函数中定义的变量。main 函数也是一个函数,与其它函数地位平等。
形参变量、在函数体内定义的变量都是局部变量。实参给形参传值的过程也就是给局部变量赋值的过程。
可以在不同的函数中使用相同的变量名,它们表示不同的数据,分配不同的内存,互不干扰,也不会发生混淆。
在语句块中也可定义变量,它的作用域只限于当前语句块。
最新文章
- iOS 应用的生命周期
- React组件性能优化
- 怎么解析json串在.net中
- jQuery Layer mobile 弹出层
- [codeforces 360]A. Levko and Array Recovery
- 【BZOJ1179】 [Apio2009]Atm tarjan缩点+SPFA
- poj 3518 Corporate Identity 后缀数组->;多字符串最长相同连续子串
- request.ServerVariables获取环境变量
- 动态规划以及在leetcode中的应用
- Courses(最大匹配)
- iOS中的图像处理(二)——卷积运算
- 在线压缩JS的工具
- Linux驱动模型解析bus之platform bus
- s6-4 TCP 数据段
- srs2.0安装问题
- cinder 和 qt5 vs2015结合
- 1、My Scripts
- 20155223 实验5 MSF基础应用
- maven mvn package 打包项目时,出现错误导致失败的解决方法
- KVM基本实现原理