原创 全局数组 局部数组 全局变量 局部变量

2009-1-2 00:13 3510 5 5 分类: 工程师职场

(1)全局数组:


#include<iostream.h>


int   i, j, a[8][8];


void  main( )
{  //int   i, j, a[8][8];
    //**a=1;                                                                 //首元素a[0][0]=1         
    for(i=1; i<8; i++)
    {   **(a+i)=1;    *(*(a+i)+i)=1;           //第一列a[0]=1,对角a=1
         for(j=1; j<i; j++)
   *(*(a+i)+j)=*(*(a+i-1)+j-1)+*(*(a+i-1)+j);
    }                                                               //a[j]=a[i-1][j-1]+a[i-1][j]  


   for(i=0; i<8; i++)                                          //输出各数组元素
   {   for(j=0; j<=7; j++)
              cout<<'\t'<<*(*(a+i)+j);
        cout<<endl;
   }
}


以上代码中的数组a[8][8]声明为全局变量时,输出的内容中,没有初始化的部分全为0,但局部数组则为随机数。


不同的初始化的形式是有区别的  ,如      
int b[2][2]={1, 2};  故b[0][0]为1, b[0][1]为2.
而int b[2][2]={{1},{2}};  故b[0][0]为1, b[1][0]为2.
前提是两个数组都为全局变量。


(2)全局变量情况:


#include<iostream.h>
int   a, b,c;


void  main( )
{
 
    cout<<a<<" "<<b<<" "<<c<<endl;
}


变量并没有初始化,此时输出的a,b,c 都为0


 


(3)局部变量:


#include<iostream.h>



void  main( )
{int   a, b,c;
 
    cout<<a<<" "<<b<<" "<<c<<endl;
}
此种情况的变量没有初始化,输出的a,b,c为随机数


 


(4)全局和局部静态变量:


#include<iostream.h>
static int   a, b,c;


void  main( )
{
 
    cout<<a<<" "<<b<<" "<<c<<endl;
}



#include<iostream.h>



void  main( )
{
  static int   a, b,c;
    cout<<a<<" "<<b<<" "<<c<<endl;
}
以上两种情况输出的a,b,c值均为0

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
5
关闭 站长推荐上一条 /3 下一条