c語言深度剖析 34 多維陣列和多級指標

2021-09-26 03:55:23 字數 1518 閱讀 3247

1.指向指標的指標

int main()

2.問題3.程式設計實驗

#include #include int reset(char **p, int size, int new_size)

free(*p);  // 釋放原來申請的空間

*p  = pt;  // 指標指向新的記憶體空間

} else  

return ret;

}int main()

free(p);

return 0;

}

4.二維陣列與二級指標

#include int main()

, ,

};int(*p)[3] = &arr[0]; //arr[0]型別為int[3], &arr[0]型別為int (*) [3]

printf("arr[0][0] = %d\n", (*p)[0]); // 1

p++;

printf("arr[1][0] = %d\n", (*p)[0]); // 4

return 0;

}

5.程式設計實驗

#include #include void printarray(int a, int size)

}int main()

, , };

int *p = &a[0][0];

int i = 0;

int j = 0;

for (i = 0; i < 3; i++)

printf("\n");

} printf("\n");

printarray(p, 9);

return 0;

}

6.陣列名二維陣列名同樣代表陣列首元素的位址 

7.程式設計實驗

#include #include int** malloc2d(int row, int col)

{ int** ret = null;

if( (row > 0) && (col > 0) )

{int* p = null;

ret = (int**)malloc(row * sizeof(int*));

p = (int*)malloc(row * col * sizeof(int));

if( (ret != null) && (p != null) )

{int i = 0;

for(i=0; i8.小結

C 34 多維陣列和多維指標

void code include include int reset char p,int size,int new size printf n printf n printarray p,9 return 0 輸出 0,1,2,3,4,5,6,7,8,printfarray 401 234567...

C語言高階 第34課 多維陣列和多維指標(難點)

指向指標的指標 指標的本質是變數 指標會占用一定的記憶體空間 可以定義指標的指標來儲存指標變數的位址值。int main 為什麼需要指向指標的指標?指標在本質上也是變數 對於指標也同樣存在傳值呼叫和傳址呼叫。include include include int reset char p,int s...

C語言深度剖析

c語言深度剖析 1,編譯器通常不為普通const唯讀變數分配儲存空間,而是將他們儲存在符號表中,使得它成為乙個編譯期間的值,沒有了儲存與讀記憶體的操作,使得它的效率更高。2,const int p p可變,p指向的物件不變。int const p p可變,p指向的物件不可變 int const p ...