以下のタイプの構造があるとします。
struct employee
{
int emp_id;
int name_len;
char name[0];
};
そんなこと知ってる
struct employee *e = malloc(sizeof(*e) + sizeof(char) * 128);
と同等です
struct employee
{
int emp_id;
int name_len;
char name[128]; /* character array of size 128 */
};
私の質問は、構造体の最後の要素が構造体ハックの場合、そのような構造体の配列を作成できますか?
例:構造体の配列 employee[3]; を作成したい。となることによって
employee[0] は次と同等です
struct employee
{
int emp_id;
int name_len;
char name[128]; /* character array of size 128 */
};
従業員[1]は次と同等です
struct employee
{
int emp_id;
int name_len;
char name[256]; /* character array of size 256 */
};
従業員[2]は次と同等です
struct employee
{
int emp_id;
int name_len;
char name[512]; /* character array of size 512*/
};