예전에 c에서 그런 트릭 본거같은데. 다양한 크기의 구조체를 만드는데 쓰더라고. 간단한 예로 struct t{int size; char data[0];}; 이런 구조체 있을때 struct t*p = (struct t*)malloc(sizeof(t)+16); p->size=16; 해서 p->data[0]에서 p->data[15]까지를 사용.
처음보고 신기하긴 했는데, 그다지 쓰고 싶지는 않은 기법이더라고ㅋ
예전에 c에서 그런 트릭 본거같은데. 다양한 크기의 구조체를 만드는데 쓰더라고. 간단한 예로 struct t{int size; char data[0];}; 이런 구조체 있을때 struct t*p = (struct t*)malloc(sizeof(t)+16); p->size=16; 해서 p->data[0]에서 p->data[15]까지를 사용.
처음보고 신기하긴 했는데, 그다지 쓰고 싶지는 않은 기법이더라고ㅋ