猿问
有关外部变量
为什么说过分依赖外部变量会导致一定的风险?为什么说它会使程序中的数据关系模糊不清?为什么在函数中使用外部变量会使函数失去通用性?
qq_不睡觉的怪叔叔_0
浏览 1348
回答 2
2回答
L49579
外部变量存储在数据段中,内部变量(局部变量)存储在堆栈中。局部变量是动态申请空间,即调用函数时动态生成,函数结束时释放,因此,它的作用域在函数中。外部变量和静态变量存储在数据段中,运行程序时存在,程序运行结束时才结束。在设计程序时尽量避免使用全局变量或静态变量,使得程序可移植度高。
0
0
0
luofuxiang
使用外部变量,当程序规模达到一定程度的时候,可能存在与局部变量重名等问题。外部变量作用方位很广,它增加了程序各功能块直接的耦合度(不符合高内聚低耦合原则)。某个函数中假设使用了外部变量,当想要将这个函数移植到其它程序中去的时候,由于其它程序没有该函数使用的外部变量,会导致函数失效,失去通用性。总之,外部变量能不用尽量不用,函数各功能块之间应该通过传参数和返回值来达到数据交互的效果。
0
0
2
随时随地看视频
慕课网APP
相关分类
C
typedef入门问题
1 回答
我要回答