Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU
(Тестовый режим)

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / C/C++

Выпуск № 41
от 17.02.2005, 17:30

Администратор:Калашников О.А. (adm@rusfaq.ru)
В номере:Вопросов: 1, Ответов: 5


Вопрос № 16915
Здравствуйте, уважаемые эксперты.
Как можно создать двумерный массив mxn, если его размеры (числа m и n) заранее неизвестны? Я пробовал таким образом (см. приложение). Подскажите, также, что я там сделал не так или это вообще не имеет смысла?

Приложение:

Отправлен: 12.02.2005, 00:37
Вопрос задал: Александр Николаевич (статус: Читатель)
Всего ответов отправлено: 5

Отвечает: vitya
Здравствуйте, Александр Николаевич!
Так и надо создавать. Сначала int ** p = new int*[m]; потом в цикле, для каждого p[i] создавать new int[n].
Ответ отправил: vitya (статус: Профессор)
Отправлен: 12.02.2005, 13:15

Отвечает: Федин А.В.
Здравствуйте, Александр Николаевич!
int** mas = new int*;
for(int i = 0; i < N; i++)
{
mas[i] = new int[M];
for(int j = 0; j < M; j++)
{
mas[i][j] = i+j;
printf("%d, ", mas[i][j]);
}
puts("");
}
Ответ отправил: Федин А.В. (статус: 2-ой класс)
Отправлен: 12.02.2005, 13:27

Отвечает: Захаров Игорь Игоревич
Здравствуйте, Александр Николаевич!<br> При создании динамического двумерного масива типа int надо делать так:<p><h6>* EMan 2 beta: back in Black :)</h6>

Приложение:

Ответ отправил: Захаров Игорь Игоревич (статус: 1-ый класс)
Отправлен: 12.02.2005, 16:44

Отвечает: AxMAD
Здравствуйте, Александр Николаевич!
Ну вообще ваша идея правильна только нужно:
int *k;
k=new int[m*n]
Ответ отправил: AxMAD (статус: Студент)
Отправлен: 12.02.2005, 17:20

Отвечает: Voituk Alexander
Здравствуйте, Александр Николаевич!
Двухмерный массив создается так :
//создаем строку
int **sss = new (int *)[m];
//а теперь создаем столбцы
for(int i = 0;i < m;i++)
sss[i] = new (int *)[n];
Удалять его нужно так же - сначала столбцы, а потом строку.
Ответ отправил: Voituk Alexander (статус: 2-ой класс)
Отправлен: 15.02.2005, 12:47


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, Россия, Москва. Идея, дизайн, программирование: Калашников О.А.


http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.cplus
Отписаться

В избранное