このコードでは、「配列」は文字へのポインタの配列ですか?または、他の何か?
struct tmep{
char (*array) [SIZE];
}
前もって感謝します :)
s の配列へのポインタSIZE charです。
宣言は使用を模倣するため、最初に括弧を評価する(*array)と、char[SIZE].
割り当てるには、安定版はいつものように
array = malloc(num_elements * sizeof *array);
逆参照されたポインターchar[SIZE]を取得して、ブロック内の各オブジェクト (ここ) のサイズを指定します。sizeofタイプが に変更された場合、その割り当てを変更する必要はありませんint (*)[SIZE]。
種類を指定したい場合は、
array = malloc(num_elements * sizeof(char (*)[SIZE]));
これは、malloc成功した場合、s のnum_elements配列に十分な大きさのブロックを割り当てSIZE charます。これらの配列のそれぞれは、次のようにアクセスされます。
array[i]
およびcharブロック内の配列内の s
array[i][j]