首页 百科知识 分类变量设置为虚拟变量

分类变量设置为虚拟变量

时间:2022-10-16 百科知识 版权反馈
【摘要】:如果定义自动变量时未进行初始化,则初始值不确定,可能引起错误的结果,在程序设计中应注意避免。外部变量在程序执行过程中,占有固定的存储单元,其生存期为整个程序。寄存器变量的初始化是在函数调用时进行的,如未进行初始化,其初始值将不确定,这一点与自动变量相同。

7.6 变量的初始化

变量的初始化指在定义变量类型的同时,对变量赋初值。

1.内部变量的初始化

这里的内部变量指自动变量。自动变量的作用域仅局限于所在的函数,函数调用结束后,自动变量的值被释放。自动变量的初始化是在函数调用时进行的,每调用一次函数都将重新进行一次初始化。

如果定义自动变量时未进行初始化,则初始值不确定(将分配给该变量的存储单元的内容作为初始值),可能引起错误的结果,在程序设计中应注意避免。例如:

img483

2.外部变量的初始化

外部变量可以被源程序文件中其他函数使用,其作用域从其定义的位置开始,一直到本源程序结束。外部变量在程序执行过程中,占有固定的存储单元,其生存期为整个程序。在定义外部变量时,如未进行初始化,则数值型外部变量的值缺省为0,字符型外部变量的值缺省为空字符。

3.静态变量的初始化

静态变量(包括静态全局变量和静态局部变量),生命期是整个程序的运行时间(段)。如在定义静态局部变量时进行初始化,则静态局部变量只在第一次使用时被赋初值;如未进行初始化,则数值型静态变量的缺省值为0,字符型静态变量的缺省值为空字符。

4.寄存器变量的初始化

寄存器变量作用域为所定义的函数。寄存器变量的初始化是在函数调用时进行的,如未进行初始化,其初始值将不确定,这一点与自动变量相同。

为避免可能的错误,应该尽量对每个变量进行初始化。

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

我要反馈