Сначала я пытался инициализировать структуру, как это:Зачем мне нужно больше фигурных скобок при инициализации этой структуры?
struct {
char age[2]; // Hold two 1-Byte ages
} studage[] = {
{23, 56},
{44, 26}
};
Но это дает мне компилятор предупреждает о пропущенных брекеты, так что я использовал больше скобок, как это было предложено компилятором и в конечном итоге с этим:
struct {
char age[2]; // Hold two 1-Byte ages
} studage[] = {
{{23, 56}},
{{44, 26}}
};
Предупреждение не было. Зачем нужны дополнительные брекеты?
это не внешние один для структуры и внутренние один для массив символов, который находится внутри него? – Wookie88
Это предупреждение, а не ошибка. Компилятор не «требует» ничего. –
дубликат [Что такое двойные фигурные скобки, инициализирующие C-struct?] (Http://stackoverflow.com/questions/6251160/what-is-the-meaning-of-double-curly-braces-initializing- ac-struct)? – nicael