Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 16.09.2015
Сообщений: 19

Как правильно объявить массив заданной пользователем размерности

21.09.2015, 12:43. Показов 1602. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1 cout << "введите количество X: ";
2 cin >> x;
3 double massiv[x];

как сделать правильно, чтобы скомпелировалась программа ?
ошибка в 3 строке
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.09.2015, 12:43
Ответы с готовыми решениями:

Как глобально объявить массив не заданной размерности
Цель: при нажатии на button1 создается массив и заполняется рандомными числами, длину массива получаем из TextBox1. А при нажатии на...

Как в классе правильно объявить массив с константой в качестве размерности?
Приветствую всех! Написал следующий код: Unit1.h class WireBare_Open { const int METAL_MAX; const int SECTION_MAX; ...

Как правильно объявить массив объектов
Как правильно объявить массив объектов: #include &lt;cstdlib&gt; #include &lt;iostream&gt; using namespace std; class orenda_kvartiri {...

9
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 35
21.09.2015, 12:49
Guinsis, эээ... Если это весь код - то много чего нужно поправить. Если нет, то сбросьте весь код.
0
156 / 143 / 62
Регистрация: 08.09.2014
Сообщений: 1,220
21.09.2015, 12:50
C++
1
2
3
4
5
 double *a;
int n;
cout<<"Vvedite razmer massiva\n";
cin>>n;
a=new double[n];
Вот и тамика подключилась
1
21.09.2015, 12:52

Не по теме:

Игорь1986, а мне в консольке пришло сообщение - "Follow Guinsis...".

0
529 / 432 / 159
Регистрация: 25.11.2014
Сообщений: 1,662
21.09.2015, 13:00
C++
1
2
3
    size_t x;
    std::cin >> x;
    unique_ptr<double[]> massiv(new double[x]);
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
21.09.2015, 13:01
Как вариант можно использовать поддержку VLA в gcc. Но лучше всего вообще заменить на std::vector
0
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 35
21.09.2015, 13:04
Tulosba, простите, а чем лучше? Чем использование вектора лучше простого динамического массива, если нет потребности в использовании всего функционала контейнера? Например простая задача - заполнить массив и вывести только чётные числа.
з.ы. я не быканша, я любопытное существо.
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
21.09.2015, 13:10
Цитата Сообщение от Тамика Посмотреть сообщение
чем лучше?
Практически всем.
1. Защита от утечек памяти.
2. Данные и их свойства (в частности, размер) хранятся в одном объекте.
3. Более простой способ ловить выход за границы массива.
1
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
21.09.2015, 13:23
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
 int main()
{
    int arr_size;
    std::cout << "Please enter an integer: ";
    std::cin >> arr_size;
    double arr[arr_size];
 
    std::cout << "This is your array: ";
    for (int i = 0; i < arr_size; ++i)
    {
         arr[i] = i * 0.5;
         std::cout << arr[i] << " ";
    }
    return 0;
}
Добавлено через 11 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <vector>
 
 int main()
{
    int arr_size;
    std::cout << "Please enter an integer: ";
    std::cin >> arr_size;
    std::vector <double> arr;
 
    std::cout << "This is your array: ";
    for (int i = 0; i < arr_size; ++i)
    {
         arr.push_back(i * 1.5);
         std::cout << arr.at(i) << " ";
    }
 
    return 0;
}
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
07.10.2015, 14:32

Не по теме:

Цитата Сообщение от Тамика Посмотреть сообщение
Death Knight´s cat.
Meow.
Пет из WoW?



Добавлено через 3 минуты
Цитата Сообщение от Тамика Посмотреть сообщение
Чем использование вектора лучше простого динамического массива, если нет потребности в использовании всего функционала контейнера?
Для меня лично чисто эстетически вектор (и вообще использование STL-ных штуковин) приятнее.
А если с точки зрения прагматики - ничем не лучше. Кому что нравится, то тем и давится
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.10.2015, 14:32
Помогаю со студенческими работами здесь

Как правильно объявить массив байтов?
Как правильно объявить массив байтов? Надо ли вручную выставлять ему размер после &quot;GetBitmapBits&quot;? Я делал так: ...

Как правильно объявить массив строк c++
Подскажите пожалуйста, как реализовать: нужно корректно обьявить массив символов(неполучается) (точнее массив строк), который прога будет...

Объявить статический массив размерности 20. Заполнить его «случайным образом»...
Задача 2. Объявить статический массив размерности 20. Заполнить его «случайным образом». Объявить два указателя: на начало и на конец...

Объявить массив? Запросто! Объявить массив массивов? А как это?
Доброго времени суток! Конечно, все знают, как объявить массив! int main () { int array; }

В массив заданной размерности N ввести произвольные числа
В массив заданной размерности N ввести произвольные числа. Создать новый массив, поменяв местами столько равноудаленных от k - того...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru