数组随笔

来源:互联网 发布:陕西干部网络培训学院 编辑:程序博客网 时间:2024/06/11 15:45

一>指向数组的指针:


int vector[10];
int *vp=vector;

int matrix[2][10];

int *mp = matrix;//错误

int (*mp)[10]=matrix;//正确


      mp 是指向一个拥有10个整形元素的数组 的 指针。当你把p与一个整数相加时,该整数值首先根据10个整型

值的长度进行调整,然后再执行加法。
      如果你需要一个指针逐个访问 整型元素 而不是逐个在数组中移动,应该创建一个简单的整形指针,并以两种
不同的方式进行初始化, 指向matrix的第一个元素。
     int *pi=&matrix[0][0];
     int *pi=matirx[0];


二>作为函数参数的数组




1.一维数组

int verctor[10];

void func1(int *vec);
void func1(int vec[]);

func1(vector);


1.二维数组

void func_2(int P[][10])  
    {  
      
    }  
      
void func_1(int (*pArray)[10])
    {  
      
    }  
      
int main()  
    {  
        int array[10][10];  
        func_1(array);  
        func_2(array);  
    }  


0 0