C語言:用malloc爲二維數組分配空間並初始化爲1

  4 int main(){

  5         //int arr[5][5];

  6         int **arr;

  7         arr = (int**)malloc(sizeof(int*) * 5);

  8         int i = 0;

  9         int j = 0;

 10         for(i = 0;i<5;i++){

 11                 arr[i] = (int *)malloc(sizeof(int) * 5);

 12         //      memset(arr[i],1,(sizeof(int)*5));

 13         }

 14         for(i = 0;i<5;i++){

 15                 for(j = 0;j<5;j++){

 16                         arr[i][j] = 1;

 17                         printf("arr[%d][[%d]=%d\n",i,j,arr[i][j]);

 18                 }

 19         }

 20         //printf("\n");

 21         for(i = 0;i<5;i++){

 22                 free(arr[i]);

 23         }

 24         free(arr);

 25         return 0;

 26 }

我發現,數組定義成註釋那樣並不行,需要定義成二級指針的形式,暫時沒想出來,希望大家多多指教

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章