Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2008, 00:40   #1
111111
Заблокирован
 
Регистрация: 13.05.2008
Сообщений: 9
По умолчанию Ввод размерности масива с клавиатуры

Привет всем. Помогите плз, не могу найти как ввести размерность массива с клавиатуры. Задача проста, нужно работать с одномерным массивом размерности n, а вот как зделать так , чтоб при запуске программы вводилось это n не могу найти...
П.С. я нуб
111111 вне форума Ответить с цитированием
Старый 15.12.2008, 11:01   #2
Blade
Software Engineer
Участник клуба
 
Аватар для Blade
 
Регистрация: 07.04.2007
Сообщений: 1,618
По умолчанию

Нужно использовать динамическое распределение памяти. Если пишешь на С, используй функцию malloc(); если на С++, оператор new. Информацию по ним ищи в инете, ее очень много
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
Blade вне форума Ответить с цитированием
Старый 29.12.2008, 03:13   #3
NextU
 
Регистрация: 29.12.2008
Сообщений: 7
По умолчанию

scanf("%d", &n); // =)
NextU вне форума Ответить с цитированием
Старый 29.12.2008, 08:54   #4
StarWorm
Форумчанин
 
Регистрация: 17.11.2008
Сообщений: 233
По умолчанию

Начинающие обычно используют не динамическое выделение памяти, а статическое, но работают с переменным массивом за счет создания статического массива большой размерности. Например:
Код:
const int MAX_SIZE=100;    //Максимальный размер массива
int n;    //Будущий реальный размер массива
int arr[MAX_SIZE]={0};
do
{
    cout<<"Enter dimmension of your array: ";    //Введите размерность массива
    cin>>n;
}
while(n<1 || n>100);

for(int i=0;i<n;i++)
    cout<<arr[i]<<" ";
Кароч примерно так! Так я еще в щколе делал, будь то Бейсик, Паскаль или Си Или я не догнал вопроса?! Оо Ну а лучшим решением конечно же будет Динамическое Выделение Памяти:
Код:
int n;    //Будущий реальный размер массива
do
{
    cout<<"Enter dimmension of your array: ";    //Введите размерность массива
    cin>>n;
}
while(n<1);
int* arr= new int[n];    //динамически выделяем память
//далее работаем с массивом как обычно
...
delete [] arr;    //очищение динамической памяти
Выбирай сам... На вкус и цвет
StarWorm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
увеличение размерности массива Лучик_света Общие вопросы .NET 3 25.10.2008 04:36
Как запретить/разрешить ввод от клавиатуры любых символов (в том числе и юникодных)? SkAndrew Общие вопросы Delphi 8 15.08.2008 15:30
Ввод чисел с клавиатуры SAVIK Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 19 26.05.2008 12:54
ввод данных с клавиатуры juden Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 07.05.2008 18:05