|
EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
变量的作用域定义:程序中可以访问一个指示符的一个或多个区域,即变量出现的有效区域,决定了程序的那些部分通过变量名来访问变量。一个变量根据其作用域的范围可以分为函数原型作用域、局部变量和全局变量。' X3 {$ @% i9 W+ n' N
1.函数原型作用域! s1 @6 {" e0 v w
函数原型中的参数,其作用域始于“(”,结束于“)”。
5 P# `: V" a ^* i ]设有下列原型声明:
6 Q0 Y6 `" {& f: adouble Area(double radius);
+ `; j8 R$ Y& U' B/ rradius的作用于仅在于此,不能用于程序正文其他地方,因而可以忽略。% U# K/ t) U% c* v7 N. Z1 S$ V
2.局部变量/ p" S; r8 ^7 p7 Y4 G
在函数内部定义的变量称为局部变量,局部变量仅能被定义该变量的模块内部的语句所访问,换言之,局部变量在自己的代码模块之处是不可见的。
% f$ u& N/ `0 A* C6 T7 q对于局部变量,要了解的重要规则是,它们仅存在于定义该变量的执行代码块中,即局部变量在进入模块时生成,在退出模块时消亡。定义局部变量的最常见的代码块是函数,例如:
$ H& {2 q5 \: a9 W8 O% Lvoid func1(); I4 A1 [& J4 \6 o# G; D2 p
{- Z2 t# d2 Z! p
intx;+ P& Z( S+ |7 q$ ^0 P
x=10;
, M! J, I2 h) }5 U}
/ d. g# c" B! jvoid func2()
: t5 x) T z/ o" n! q1 |+ ]! \{
# I+ V! g: o1 Z3 Y) \: N9 F( l intx;
9 p/ ^& f3 D& g; r x=2007;
6 |. k5 i4 Z m: b- Z8 W& x; |* v2 @}
$ e' I+ u( i; b整数变量x被定义了两次,一次在func1中,另一次唉func2中。func1和func2中互不相关,原因是每个x作为局部变量仅在定义的模块内可见。) J( v- l5 {: b5 h9 f
要注意的是,在一个函数内部可以在符合语句中定义变量,这些符合语句成为“分程序”或“程序块”。
* b% J4 k, F, e' X6 A% }4 O |
|