С инициализацией структуры Как инициализировать структуру, если одно поле в структуре является структурой? Спасибо. Ответ 1 Вам нужно использовать больше брекетов (на самом деле они необязательны, но GCC предупреждает в эти дни). Вот пример: struct s1 { int a; int b; }; struct s2 { int c; struct s1 s; }; struct s2 my_s2 = { 5, { 6, 3 } }; Ответ 2 Вложение структуры Вы можете инициализировать структуру, если одно поле в структуре является структурой struct add{ int house; char road; }; struct emp{ int phone; struct add a; }; struct emp e = { 123456, 23, "abc"}; printf("%d %d %c",e.phone,e.a.house,e.a.road); Ответ 3 struct A { int n; } struct B { A a; } b; Вы можете инициализировать n следующим оператором. Это то, что вы ищете. b.a.n = 10;
Ответ 1 Вам нужно использовать больше брекетов (на самом деле они необязательны, но GCC предупреждает в эти дни). Вот пример: struct s1 { int a; int b; }; struct s2 { int c; struct s1 s; }; struct s2 my_s2 = { 5, { 6, 3 } };
Ответ 2 Вложение структуры Вы можете инициализировать структуру, если одно поле в структуре является структурой struct add{ int house; char road; }; struct emp{ int phone; struct add a; }; struct emp e = { 123456, 23, "abc"}; printf("%d %d %c",e.phone,e.a.house,e.a.road);
Ответ 3 struct A { int n; } struct B { A a; } b; Вы можете инициализировать n следующим оператором. Это то, что вы ищете. b.a.n = 10;