首页 百科知识 函数和文件操作

函数和文件操作

时间:2022-10-17 百科知识 版权反馈
【摘要】:由于外部变量可以被同一程序中的其他函数使用,因此外部变量提供了函数间除“实参—形参”相结合传送数据之外的另一种数据传送的渠道。实际应用中,函数调用时通过return语句只能返回一个值,而通过外部变量可以返回多个值。

7.3.1 在同一个源程序文件中使用外部变量

例7-2 外部变量作用域如下所示:

img580

img581

说明:

(1)由于外部变量可以被同一程序中的其他函数使用,因此外部变量提供了函数间除“实参—形参”相结合传送数据之外的另一种数据传送的渠道。实际应用中,函数调用时通过return语句只能返回一个值,而通过外部变量可以返回多个值。

例7-3 计算10个数的和与平均值。

img582

img583

运行结果如图7.3.1所示。

img584

图7.3.1 外部变量的使用

说明:程序要返回两个值,平均值在average()函数中用return语句返回,以及通过全局变量sum返回。

(2)如外部变量在所有函数之前定义,则同程序的所有函数都可以直接引用,不需另外说明;如外部变量在程序中间定义,则定义之前的函数要引用,应使用关键字extern进行引用性声明,引用性声明不分配存储空间,声明格式如下:

extern 类型标识符 变量名表;

例7-4 外部变量作用域向上扩展。

运行结果如图7.3.2所示。

img586

图7.3.2 外部变量作用域向上延伸

说明:使用extern进行引用性说明时,可不使用类型标识符,如本例所示。

(3)如果外部变量与函数中的内部变量同名,则在该内部变量的作用域内,外部变量不可见(被屏蔽),暂时不能使用。

例7-5 外部变量与内部变量同名。

img587

运行结果如图7.3.3所示。

img588

图7.3.3 外部变量作用域

(4)使用外部变量时,如在一个函数中改变了外部变量的值,将影响到同程序的其他函数。实际应用中,有时在一个函数中不经意地改变外部变量的值,将使整个程序的运行出现错误。

(5)外部变量使用过多,将降低程序的可读性,不便于分析每个外部变量的瞬时变化情况。另外外部变量的使用增强了函数之间的数据联系,但同时又使得函数过分依赖这些外部变量,降低了函数的独立性,因此从结构化程序设计的角度来讲,要限制外部变量的使用。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈