2012-02-27 13 views
3

私がしようとしているものは、配列char **の配列が必要です。 私は以下を使用して256回の無料通話を必要と終わる動的配列を作成することが判明:Cの文字の(半)動的配列を作成する方法

char** start = malloc(11*sizeof(char)); 
    for (i=0;i<256;i++) { 
    start[i] = malloc(11*sizeof(char)); 
} 
for (i=0;i<256;i++) { 
    free(start[i]); 
} 

にはどうすれば...

答えて

4
char (*p)[12] = calloc(n, sizeof(*p)); // or malloc 

... 

free(p); 
をそれが理にかなっている場合、フォーム char[(malloc)][(12)]である配列を作成します

pは、n配列へのポインタである長さ12

+0

私は答えがchar **から見てどのように異なることにより、最初は混乱が、私は実際にあなたが示唆した正確に何しようとした後は、魅力のように働いたの各。ありがとう –

+0

@ user1190885:ああ、申し訳ありませんが、私はあなたが 'char'を使用していたことに気付かなかった!私はとにかく私の答えを調整しました。 –

関連する問題