C语言中全局数组的注意点


假如有一个全局数组,int a[100],当在函数中对它进行操作,尤其是需要反复计算时,要注意它的状态。因为全局数组一旦存有数据,就不会随着某些函数的结束而清空。
举例:阶乘的一个算法中,配置全局数组之后,每次对具体的一个数计算阶乘时,都要对数组的部分元素进行计算,而下次再计算另一个数时,就会借用上次的值,因此而发生错误。代码模型如下:

int a[100];/*全局数组*/
void f( )/*计算函数*/
{
    ....操作数组a....
}
main()
{
    do
    {
       ...重复计算阶乘..
    f( ); /*调用函数*/
    }while(1);
..
}

每次调用函数都要将全局数组还原到最初状态,可以用memset()函数、


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM