Забыл добавить, что это расширение над ansi-C.
См. например:
http://gcc.gnu.org/onlinedocs/gcc/Unnamed-Fields.html#Unnamed-Fields
В стандартном си неименованными могут быть только поля в bit field,
ну и всякая экзотика типа неименованный массив на который хранится
указатель:
int* p = (int []) {1,2,3,4,5};
Ю.