void countSort(int arr[], int n, int exp)
{
int* output[] = new int[n] ; // output array
int i, count[10] = { 0 };
В данном примере при попытке создания массива output
, возникает ошибка под new
: «для агрегатного объекта требуется инициализация...». Пробовал делать просто int output [n];
, но VS не позволяет так сделать (возможно, отсутствует поддержка VLA).
Когда делаю такое на C, проблема та же, только после компиляции «ругается» на malloc
. Вопрос: как создать массив в функции, используя для его размера параметр функции?
Оператор new
выделит для массива память и вернет указатель на этот выделенный для вас участок памяти. Вы же пытаетесь присвоить указатель (int *
) массиву (int []
). Решение — сделать переменную output
указателем:
int *output = new int[n];
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Написал небольшой модуль для lua51 (в качестве эксперимента) на с++ (понятное дело функции экспортированы в C)
Друзья, помогите с задачейКак сделать так, чтобы запись в файл производилась из всех файлов проекта(например
Есть у меня кнопка на ней ссылка которая передаёт значения!