§6.1外部存储类型 若想在程序某个源文件中用该程序其它源文件定义的全局 变量或函数,要用 extern对其声明。 例: //filel. cpp //file2. cpp int V=0 int x1 static char=A extern int y; void maino {…y…∥Ok {….x…/Ok c∴//Ok /Error, x未声明 y…/Ok z…,/Eror,z未声明 Z ● ∥/Eror,z未声明 e…/Eror,c不可使用 double z=2; {…2Z…,/Ok C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 6 § 6.1外部存储类型 若想在程序某个源文件中用该程序其它源文件定义的全局 变量或函数,要用exterm对其声明。 //file2.cpp int y=0; static char c='A'; f( ) { ...y ... //Ok ...c ... //Ok ...x ... /Error, x未声明 ...z ... /Error, z未声明 } double z=2; g( ) { ...z ... //Ok} 例: //file1.cpp int x=1; extern int y; void main() { ...x ... //Ok ...y ... //Ok ...z ... //Error, z未声明 ...c ... //Error, c不可使用 }
extern的用法: ①本文件中,在定义前要使用全局变量,可用 extern对变量作引用说明 例: extern int n;/对全局变量n作引用性说明 void tI(int a, int b) {…使用全局变量n intn;/对全局变量n作定义 ②在同一项目(程序)的其它源程序文件中定义的全局变量,通过 extern说 明后,可在该文件中使用 C++程序设计课件设计制作:徐龙琴 7
C++程序设计课件 设计制作:徐龙琴 7 ① 本文件中,在定义前要使用全局变量,可用extern对变量作引用说明。 例: extern int n; //对全局变量n作引用性说明 void t1(int a, int b) { …使用全局变量 n … } …… int n; //对全局变量n作定义 ② 在同一项目(程序)的其它源程序文件中定义的全局变量, 通过 extern 说 明后,可在该文件中使用. extern的用法:
§62静态存储类型 变量的静态存储类型有:全局变量和静态变量,它门都存 方在内存的全局数据区。都在定义时开辟存储空间,程序结東 时释放存储空间;生命周期均为程序运行期间。其值都具有继 承性且其默认的初值为0 函数按其存储类型也可以分为两类:内部函数和外部函数 内部函数:是只能在定义它的文件中被调用的函数,而 在同一程序的其他文件中不可调用。内部函 数定义时,在函数类型前加 static,所以也 称为静态函数。 C++程序设计课件设计制作:徐龙琴 8
C++程序设计课件 设计制作:徐龙琴 8 § 6.2 静态存储类型 变量的静态存储类型有:全局变量和静态变量,它门都存 方在内存的全局数据区。都在定义时开辟存储空间,程序结束 时释放存储空间;生命周期均为程序运行期间。其值都具有继 承性且其默认的初值为0。 函数按其存储类型也可以分为两类:内部函数和外部函数 1.内部函数: 是只能在定义它的文件中被调用的函数,而 在同一程序的其他文件中不可调用。内部函 数定义时,在函数类型前加static,所以也 称为静态函数
(1)静态函数格式如下: static函数类型函数名(参数列表) 函数体} 例:静态函数的例子 ∥)件 filel. cpp中 内部函数的 只限于 #include <iostream.h> ,所以在 static void fun (; void main() ,它们互不干扰。 {fun();} static void fun() i cout<< this in filel <<endl; j C++程序设计课件设计制作:徐龙琴
C++程序设计课件 设计制作:徐龙琴 9 ⑴ 静态函数格式如下: static 函数类型 函数名(参数列表) { 函数体 } 内部函数的作用域只限于定 义它的文件,所以在同一个程序 的不同文件中可以有相同命名的 函数,它们互不干扰。 例: 静态函数的例子。 //文件file1.cpp中 #include <iostream.h> static void fun( ); void main( ) { fun( ); } static void fun( ) { cout<<"this in file1 "<<endl; }
2外部函数:是可以在整个程序各个文件中被调用的函数 外部函数定义时,在函数类型前加 extern,格 式如下: extern<函数类型><函数名>(<参数列表>) <函数体>} 如果定义时没有声明函数的存储类型,系统默认为 extern型。 C++程序设计课件设计制作:徐龙琴 10
C++程序设计课件 设计制作:徐龙琴 10 ⒉外部函数:是可以在整个程序各个文件中被调用的函数。 外部函数定义时,在函数类型前加extern,格 式如下: 如果定义时没有声明函数的存储类型,系统默认为extern 型。 extern <函数类型> <函数名> (<参数列表>) { <函数体> }