2
Я новичок в C и экспериментирую с структурами. После того, как я создал структуру, можно ли переназначить ее фигурными скобками?переназначить структуру в C
typedef struct {
int height;
int age;
} Person;
int main (void)
{
Person bill = {100,35};
bill = {120,34}; // error: expected expression before ‘{’ token
bill = Person {120,34}; // error: expected expression before ‘Person’
return 0;
}
Спасибо большое! Работает отлично с моим GCC (OSX GCC версии 4.2.1). Я мало знаю о вариантах C и последствиях использования новых функций. Могу ли я спросить, считается ли это стандартом? – MachineElf
@MachineElf Есть 4 аромата языка C: K & R C, C90, C99 и C11. K & R C является предварительной стандартизацией, а две цифры остальных составляют год выпуска. Комбинированные литералы и назначенные инициализаторы были введены на C99. Текущей версией стандарта является C11, и он также поддерживает эти функции. Поэтому это следует считать стандартным - если ваш компилятор не может обработать этот код, он не соответствует стандарту C. – Lundin
Ах, фантастика, спасибо! – MachineElf