作者xatier (阿飄先生)
看板C_and_CPP
標題Re: [問題] 請問c可以寫非對稱的多維陣列嗎??
時間Fri Jul 8 18:25:40 2011
※ 引述《minagi (美凪)》之銘言:
: ※ 引述《spiderman007 (千里之外)》之銘言:
: : 開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
: : dev-c
: : 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
: : 問題(Question):
: : 如題...
: : 可以將資料用二維陣列寫入非對稱的多維陣列嗎?? 如下
: : 1
: : 1 2
: : 1 2 3
: : 1 2 3 4
: : 再show出來嗎??
: : 餵入的資料(Input):
: : 預期的正確結果(Expected Output):
: : 錯誤結果(Wrong Output):
: : 程式碼(Code):(請善用置底文網頁, 記得排版)
: : 補充說明(Supplement):
這可能是你要的?
#include <stdio.h>
#include <stdlib.h>
int main (void) {
int *vec[4], i, j;
for (i = 0; i < 4; i++)
vec[i] = malloc(sizeof(int)*(i+1));
for (i = 0; i < 4; i++)
for (j = 0; j <= i; j++)
vec[i][j] = j+1;
for (i = 0; i < 4; i++) {
for (j = 0; j <= i; j++)
printf("%d ", vec[i][j]);
printf("\n");
}
return 0;
}
用 array of pointers 實作
array 中每個成員再指向 malloc 到的記憶體
補充
int *vec[4]; 是指 4個 int* 形成的 array
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.114.249.221
→ xatier:印象中 K&R 講指標的那章有講過(?) 07/08 18:29
※ 編輯: xatier 來自: 59.114.249.221 (07/08 18:37)
推 darkgerm:推薦這個學弟 07/08 20:26
→ firejox:推薦這位學長 07/08 20:51
推 angleevil:推薦xatier快接近t大的守備範圍 07/09 06:22
→ xatier:樓上別這麼說,我跟t大還差的遠 =D= 07/10 14:18