|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
变量的作用域定义:程序中可以访问一个指示符的一个或多个区域,即变量出现的有效区域,决定了程序的那些部分通过变量名来访问变量。一个变量根据其作用域的范围可以分为函数原型作用域、局部变量和全局变量。' r* A s8 a, ]+ [) n" ~* {: V6 h
1.函数原型作用域
: K" K( h7 x; B4 u% t0 x函数原型中的参数,其作用域始于“(”,结束于“)”。
9 k5 d" ?+ R( X1 O5 Q4 b设有下列原型声明:( u; o# s' l4 N8 ]7 o, D& W" t
double Area(double radius);5 \ T$ c' n2 r
radius的作用于仅在于此,不能用于程序正文其他地方,因而可以忽略。
/ L/ J* Z o* O2.局部变量
. c5 ^1 O; ^" p( W2 H$ P& G在函数内部定义的变量称为局部变量,局部变量仅能被定义该变量的模块内部的语句所访问,换言之,局部变量在自己的代码模块之处是不可见的。! u. y- |! J" J' ^7 i/ s
对于局部变量,要了解的重要规则是,它们仅存在于定义该变量的执行代码块中,即局部变量在进入模块时生成,在退出模块时消亡。定义局部变量的最常见的代码块是函数,例如:
2 M1 E2 J% @( U+ ^" i9 C4 i; ivoid func1()% ]$ P7 l, Q0 K+ R4 G8 k, `7 _
{& m* O$ P+ C8 |1 t1 e7 R( y1 D
intx;
9 O) r7 W" k6 h( c. m9 L, w6 A x=10;+ l- k5 c% \' a, Y
}+ m+ i, ~5 N" {
void func2()* e: r' H+ o5 f1 [7 C5 ]1 x
{
. m! P/ _: x' T. b' z" J4 B intx;
) [6 Q( U: n- g8 e" | x=2007; 8 T0 ^6 O1 a3 V( w1 B. B9 t3 {
}
5 M7 q8 w, N! t3 z% K! P整数变量x被定义了两次,一次在func1中,另一次唉func2中。func1和func2中互不相关,原因是每个x作为局部变量仅在定义的模块内可见。
4 t+ {8 E0 T% `( X# @要注意的是,在一个函数内部可以在符合语句中定义变量,这些符合语句成为“分程序”或“程序块”。 a7 n7 s4 V! y1 _
|
|