имеется некая структурка struct something { ...
unsigned count; unsigned element[0]; }; то есть в поле count сказано сколько элементов будет после структурки. ну и обращение к ним идет так: for (i = 0; i < s->count; i++) { s->elements[i] = i; } теперь когда мы это хотим саллоцировать, то пишем такой аллокатор struct something * some_alloc(unsigned size) { return malloc(sizeof(struct something) + sizeof(unsigned) * size); } а вот если появилась необходимость саллоцировать такой объект статически, как быть? хочется макрос #define SOMETHING(name, size) ... чтобы пользователь мог сказать void foo(void) { static SOMETHING(name, 5); SOMETHING(name2, 10); } и получить саллоцированный на стадии компиляции (или в стеке) такой объект? -- . ''`. Dmitry E. Oboukhov : :’ : email: un...@debian.org jabber://un...@uvw.ru `. `~’ GPGKey: 1024D / F8E26537 2006-11-21 `- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
signature.asc
Description: Digital signature