解释C语言中的变量绑定。
要完整定义一个变量,不仅需要提及它的“类型”,还需要提及它的存储类。
变量名标识计算机内存中某个物理位置,在该位置分配了一组位来存储变量的值。
存储类说明以下因素 −
- 变量存储在哪里(内存或CPU寄存器)?
- 如果未初始化,变量的初始值是什么?
- 变量的作用域是什么(可以在哪里访问它)?
- 变量的生命周期是多久?
绑定
绑定查找标识符的应用出现(用法)的相应绑定出现(声明/定义)。
- 应该知道变量的作用域。
什么是块结构?
标识符是变量的哪个块?
- 如果我们再次使用相同的标识符名称会发生什么?
‘C’禁止在相同作用域中使用相同的标识符名称。
可以在不同的作用域中使用相同的名称。
示例
double f,y; int f( ) //error { --- ---- ---- } double y; //error
示例
double y; int f( ){ double f;//legal int y; //legal }
示例
以下是变量绑定的C程序 −
#include<stdio.h> int i=33; main() { extern int i; { int i=22; { const volatile unsigned i=11; printf("i=%d
",i); } printf("i=%d",i); } }
输出
执行上述程序时,会产生以下输出:
i=11 i=22
广告