0
我想弄清楚在c中的二維數組的內存佈局是如何工作的。尤其是字符串數組。我知道應該怎麼讀this site二維字符串數組的C內存佈局
後的工作,但在做分配時一樣
char *states[] = {
"California", "Oregon",
"Washington", "Texas"
};
是行大小自動設定爲匹配最長字符串的大小?
我試圖找出使用下面的代碼,但我仍然沒有得到它。
int main(){
char *test[] = {
"0", "12",
"345", "6789"
};
int i = 0;
int j = 0;
for (i=0; i<10; i++){
for (j=0; j<10; j++){
printf("%d,%d: ", i,j);
printf("%c\n", test[i][j]);
}
}
return 0;
}
我有所有的行應該具有相同的大小,但似乎是下一個字符串通過遍歷數組時,一個空格後立即啓動的感覺。
在此先感謝!