Witam !
Mam sobie strukturę:
i teraz: chcę zarezerwować pewną ilość miejsca, w samej strukturze, chodzi o to aby zarezerwowany obszar pamięci był ciągły i w wolnym miejscu tejże struktury, mogę wpisać inną strukturę. Np
W takim przypadku struktura inner_structure zajmie 8 bajtów (zależnie od implementacji inta na platformie) i to jest w porządku. Problem polega na tym, że w wolne pole chcę wpisywać dowolną strukturę na stałe. Mogę oczywiście dynamicznie zarezerwować odpowiednie miejsce gdzieś na stosie w stylu:
Ale chodzi mi o to, abym w czasie tworzenia struktury zewnętrznej (i dopiero wtedy) zapodał parametr ile wolnej przestrzeni ma zostać w strukturze, na kolejne moje dane. Myślałem troche o polu unii, ale nie wchodzi ono w grę bo przestawiłoby mi drzewo zależności do góry nogami.
Czy ktoś zna jakiś elegancki sposób wymuszenia rezerwacji pamięci dla struktury w ten sposób ?
Pzdr!
Mam sobie strukturę:
struct xxx {
int data1;
void *pData2;
char some_buffer[25];
int (*doAction)(int, int);
};i teraz: chcę zarezerwować pewną ilość miejsca, w samej strukturze, chodzi o to aby zarezerwowany obszar pamięci był ciągły i w wolnym miejscu tejże struktury, mogę wpisać inną strukturę. Np
struct inner_structure {
int from;
int to;
};
struct outer_structure {
int a1;
double a2;
struct inner_structure inner;
// ...
int (*doAction)(int, int);
};W takim przypadku struktura inner_structure zajmie 8 bajtów (zależnie od implementacji inta na platformie) i to jest w porządku. Problem polega na tym, że w wolne pole chcę wpisywać dowolną strukturę na stałe. Mogę oczywiście dynamicznie zarezerwować odpowiednie miejsce gdzieś na stosie w stylu:
struct outer_structure {
struct inner_structure *inner
}
main()
{
outer_structure out;
out.inner = (inner_structure*) malloc (sizeof(inner_structure))
}Ale chodzi mi o to, abym w czasie tworzenia struktury zewnętrznej (i dopiero wtedy) zapodał parametr ile wolnej przestrzeni ma zostać w strukturze, na kolejne moje dane. Myślałem troche o polu unii, ale nie wchodzi ono w grę bo przestawiłoby mi drzewo zależności do góry nogami.
Czy ktoś zna jakiś elegancki sposób wymuszenia rezerwacji pamięci dla struktury w ten sposób ?
Pzdr!