C99 Структура Назначенные инициализаторы и другая ценность
Мне известно, что в C99 вы можете инициализировать элементы структуры, используя имя члена следующим образом:
struct myStruct
{
int i;
char c;
float f;
};
Так что следующее действительно:
struct myStruct m = {.f = 10.11, .i = 5, .c = 'a'};
Также сказано, что неинициализированные члены будут настроены на0
, Так
struct myStruct m = {.f = 10.11, .c = 'a'};
Вотi
будет установлен в0
Но для следующего:
struct myStruct m = {.f = 10.11, .c = 'a', 6};
i
все еще инициализируется до 0. Что является причиной, если мы делаем такую сложную инициализацию.