Голосование за лучший ответ
Евгений Высочин
Просветленный
(38033)
3 года назад
#include<stdlib.h>
int n = 5;
char *keys; //указатель на массив
//выделяем память в куче (ОЗУ)
//под массив из 5 элементов:
keys=(char*)malloc(n * sizeof(char));
//если не выделена память под массив,
//то завершаем работу программы с ошибкой:
if(!keys) exit(1);
//увеличиваем размер массива
//ещё на 2 элемента:
keys=(char*)realloc(keys,n*sizeof(char)+2);
if(!keys) exit(1);//если ошибка, завершаем работу
Krab Bark
Искусственный Интеллект
(300814)
3 года назад
Это расширение C++ от Microsoft.
"Чтобы создать неполный тип массива, объявите тип массива, не указывая для него число повторений. Пример:
char a[]; /* a has incomplete type */
Чтобы дополнить неполный тип массива, объявите то же самое имя ниже в той же самой области видимости и задайте его число повторений, как в следующем примере:
char a[25]; /* a now has complete type */"
char keys[];
Ошибка:
Недопустимый неполный тип
Что не так?