Здравствуйте, George__20, Вы писали:
G__>Kto mojet pomoch raziasnite etot cod. Neponiatni tolko eti skobki
ZARANE SPOSIBO
G__>typedef struct {
G__> int a;
G__>} st;
G__>st f()
G__>{
G__> int a;
G__> return (st) {({a;})}; // ???
G__>}
(st) {...}
это compound literal из C99 стандарта. Фактически компилятор здесь делает неименнованную переменную типа st и инициализирует ее тем что в скобках.
({ ...; })
это уже расширение из GNU C.
GNU C которое позволяет из блока кода сделать выражение значение и тип которого определяется последним statement в блоке.
В данном примере
return (st) {({a;})};
эквивалентно просто
return a;
ну и такие навороты особого смысла не имеют, если только это не вопрос на интервью.