|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
变量的作用域定义:程序中可以访问一个指示符的一个或多个区域,即变量出现的有效区域,决定了程序的那些部分通过变量名来访问变量。一个变量根据其作用域的范围可以分为函数原型作用域、局部变量和全局变量。/ f: y' o5 H: N3 t& o( C$ g3 D& r& [2 P
1.函数原型作用域* A- }( f3 [$ S- c- I6 N! Y* l. P( w
函数原型中的参数,其作用域始于“(”,结束于“)”。
6 i) c0 S0 O+ N% l4 {设有下列原型声明:
1 `+ z0 @5 E% l: x# Jdouble Area(double radius);) v) R8 _- {$ _4 t6 Z
radius的作用于仅在于此,不能用于程序正文其他地方,因而可以忽略。4 g/ i2 a6 B6 @" P8 p- L7 S7 Z) z
2.局部变量 W1 Y0 ?) v1 D' ~) {) M
在函数内部定义的变量称为局部变量,局部变量仅能被定义该变量的模块内部的语句所访问,换言之,局部变量在自己的代码模块之处是不可见的。+ J% f i% `) n9 R- q5 Z; k, V
对于局部变量,要了解的重要规则是,它们仅存在于定义该变量的执行代码块中,即局部变量在进入模块时生成,在退出模块时消亡。定义局部变量的最常见的代码块是函数,例如:
$ [- b" z* B& n" a* e( Ovoid func1()
$ {8 z' U( T, @: C) L' E{
! h7 s4 X" @1 X+ o intx;! [1 w5 L$ w9 V. n: [7 j6 b
x=10;4 _/ @6 {, L. h! G
}
; h+ T. f% R( P1 k: rvoid func2()
* o8 H% Z9 P, g0 [2 A9 y{
1 { V) l" t! ~) c, k$ k intx;
/ ]2 ^# K/ y& y2 u. Z( E* J( p5 R x=2007;
- A: l8 r$ H( n7 ^: L. e}
4 `6 k. w. ]& j) l, l整数变量x被定义了两次,一次在func1中,另一次唉func2中。func1和func2中互不相关,原因是每个x作为局部变量仅在定义的模块内可见。4 d7 n1 b$ A5 e5 U. `
要注意的是,在一个函数内部可以在符合语句中定义变量,这些符合语句成为“分程序”或“程序块”。. `' p2 z+ {# t% |# ]7 x; q& q
|
|