Инициализация массива в struct в C
Привет, я пытаюсь инициализировать массив char и int в этом простом коде, но у меня есть ошибка ,
n.c:25:19: error: expected expression before ‘]’ token select.arr1[]={ ^ n.c:31:18: error: expected expression before ‘]’ token select.num1[]={ ^ n.c:36:17: error: expected expression before ‘]’ token select.arr2[]={ ^ n.c:41:18: error: expected expression before ‘]’ token select.num2[]={
как вы можете решить эту проблему, пожалуйста ?
Что я уже пробовал:
int main( void ) { struct str { char arr1[4],arr2[4]; int num1[4],num2[4]; } ; struct str select ; select.arr1[]={ { .arr1 = "lely" }, { .arr1 = "sara" } }; select.num1[]={ { .num1=30 }, { .num1=70 } }; select.arr2[]={ { .arr2 = "sam" }, { .arr2 = "denis" } }; select.num2[]={ { .num2=50 }, { .num2=90 } }; printf("%s",select.arr1[0]); printf("%s",select.arr1[1]); printf("%d",select.num1[0]); printf("%s",select.arr2[0]); }
[no name]
Вы можете посмотреть здесь: C инициализирующий массив структуры - C Программирование - c4learn.com[^]
Lilyanaa
да,я видел это , но эта ссылка использует массив структуры
[no name]
Смотреть здесь: C инициализирующая структура - C Программирование - c4learn.com[^]
Dave Kreskowiak
Ваш код не имеет никакого смысла вообще, и вы описали, что вы пытаетесь сделать.
Похоже, это домашнее задание, поэтому я не собираюсь давать вам то, что, как я подозреваю, должно быть ответом. Если то, что я думаю, правда, то с этим кодом много чего не так.
Lilyanaa
Нет,это не домашнее задание, и в этом коде я пытаюсь придать постоянное значение членам struct. спасибо