數組隨筆


一>指向數組的指針:


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);  
    }  


發佈了17 篇原創文章 · 獲贊 1 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章