~$ 存档

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

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

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

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

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

posted on 2016-03-31 02:07  LuoTian  阅读(4011)  评论(0)    收藏  举报