Здравствуйте, XuTMAH, Вы писали:
XTM>Проблема третьего варианта: член структуры имеет тип который не используется (_A3) и только вносит путаницу при большом числе членов класса.
"_A3" — это не обязательно.
Возможен такой вариант:
typedef struct A3 {
struct A3* next;
} A3;
Так, например, делает SDL:
typedef struct SDL_Rect {
Sint16 x, y;
Uint16 w, h;
} SDL_Rect;
XTM>Остаётся вопрос на всех ли Вам известных компиляторах Си и Си++ компилируется приведённый код?
Старенький lcc (версия компилятора ещё от 2004 года, Си) скопилировал, mingw 3.4.5 (Си, C++) — тоже, MS VC++ 6.0 (Си, C++) — аналогично, mingw 4.3.0 (Си, C++) — тоже, MS VC++ 2005 Express Edition (Си, C++) — тоже... Хватит, пожалуй
А насчёт последнего вопроса не в курсе, извините