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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2012, 19:36   #1
kineziz
Форумчанин
 
Регистрация: 22.12.2011
Сообщений: 378
По умолчанию Массивы и их размер

Можно ли как нить ввести размерность массива с клавиатуры допустим или это значение всегда типа const и изменять его внешним воздействием нельзя?
Большинство хороших программистов делают свою работу не потому, что ожидают оплаты или признания, а потому что получают удовольствие от программирования.
kineziz вне форума Ответить с цитированием
Старый 20.04.2012, 19:56   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
int n;
Вводим n
int *a=new int[n]; // Это массив
...
a[3]=чемунить // типа работаем с ним
...
delete[]a; // Убираем после работы
Читай про динамические массивы, и уточняй на какой разновидности Си нужно писать. В Классическом будет по другому
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.04.2012, 20:14   #3
kineziz
Форумчанин
 
Регистрация: 22.12.2011
Сообщений: 378
По умолчанию

Спасибо работает.
Большинство хороших программистов делают свою работу не потому, что ожидают оплаты или признания, а потому что получают удовольствие от программирования.
kineziz вне форума Ответить с цитированием
Старый 20.04.2012, 22:02   #4
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

kineziz

Можно ли как нить ввести размерность массива с клавиатуры допустим или это значение всегда типа const и изменять его внешним воздействием нельзя?

Нельзя. Размер массива жестко задается при компиляции и не может быть изменен при работе программы.
То, что показал тебе Stilet, на самом деле называется "указатель на целое". Массивом оно не является.
Rififi вне форума Ответить с цитированием
Старый 20.04.2012, 22:09   #5
kineziz
Форумчанин
 
Регистрация: 22.12.2011
Сообщений: 378
По умолчанию

Ну с этим я согласен. Хотяб теперь могу ввести значение с клавиатуры или вычислить его подпрограммой
Большинство хороших программистов делают свою работу не потому, что ожидают оплаты или признания, а потому что получают удовольствие от программирования.
kineziz вне форума Ответить с цитированием
Старый 20.04.2012, 22:37   #6
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

Цитата:
Сообщение от Rififi Посмотреть сообщение
kineziz

Можно ли как нить ввести размерность массива с клавиатуры допустим или это значение всегда типа const и изменять его внешним воздействием нельзя?

Нельзя. Размер массива жестко задается при компиляции и не может быть изменен при работе программы.
То, что показал тебе Stilet, на самом деле называется "указатель на целое". Массивом оно не является.
А это что такое?

http://ideone.com/W5jYZ
_Bers вне форума Ответить с цитированием
Старый 20.04.2012, 22:51   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
_Bers
А это не все компиляторы поддерживают
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.04.2012, 22:52   #8
kineziz
Форумчанин
 
Регистрация: 22.12.2011
Сообщений: 378
По умолчанию

Массив т.к. его используют как массив к примеру:

int n;
int *a=new int[n];

Это ведь работа с массивом. Тотже привычный массив и те же индексы нечего нового кроме определения
a[3] = 10;
a[4] = 20;
Большинство хороших программистов делают свою работу не потому, что ожидают оплаты или признания, а потому что получают удовольствие от программирования.
kineziz вне форума Ответить с цитированием
Старый 20.04.2012, 22:53   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Тотже привычный массив и те же индексы нечего нового кроме отпределния
Обертка. А внутри это все же указатель со смещением, так что Rififi отчасти прав.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.04.2012, 22:53   #10
kineziz
Форумчанин
 
Регистрация: 22.12.2011
Сообщений: 378
По умолчанию

ну VS C++ точно поддерживает (испытано)
Большинство хороших программистов делают свою работу не потому, что ожидают оплаты или признания, а потому что получают удовольствие от программирования.
kineziz вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двумерные массивы(матрица) 2)Строковые массивы(строки): 3)Структуры nuriyat Помощь студентам 1 21.01.2012 16:16
Двумерные массивы(массивы указателей на массивы) krytishka99 Помощь студентам 1 29.12.2011 19:51
Размер формы Andrey85 Компоненты Delphi 4 13.12.2010 00:14
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12
Размер Image изменяется на размер картинки, а сама она рисуется на области первой картинки RPGer Мультимедиа в Delphi 6 20.10.2008 19:54