局部程序块是指一对大括号({})之间的一段C语言程序。一个C函数包含一对大括号,这对大括号之间的所有内容都包含在一个局部程序块中。if语句和swich语句也可以包含一对大括号,每对大括号之间的代码也属于一个局部程序块。
此外,你完全可以创建你自己的局部程序块,而不使用C函数或基本的C语句。
下面是一个使用局部程序块的例子:
#include <stdio.h>
void main()
{
/* Begin local block for function main() */
int test_var = 10;
printf("Test variable before the if statement: %d\n", test_var);
if (test_var>5)
{
/* Begin local block for "if" statement */
int test_var = 5;
printf("Test variable within the if statement: %d\n",test_var);
{
/* Begin independent local block (not tied to
any function or keyword) */
int test_var = 0;
printf ("Test variable within the independent local block: %d\n",test_var);
}
}
/* End independent local block */
printf ("Test variable after the if statement: %d\n", test_var);
}
/*End local block for function main () */
上例产生如下输出结果:
注意:在这个例子中,每次test_var被定义时,它都要优先于前面所定义的test_var变量。此外还要注意,当if语句的局部程序块结束时,程序重新进入最初定义的test_var变量的作用范围,此时test_var的值为10。