Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> 2-д массив 
:(
    Опции темы
Путин В.В.
  Дата 4.12.2005, 17:02 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Как они делаются, куда там нью ставить и где указатели растовлять? Запутался.


Код


int **p;
p=new int *[10];
for(int i=1,i<11,i++);
    p[i]=new int[10];


так? smile
  Вверх
Void
Дата 4.12.2005, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 40
Всего: 173



Чуть-чуть ошибся:
Код

int **p;
p=new int*[10];
for(int i = 0; i < 10; i++);
    p[i] = new int[10];

// а удалять так:
for (int i = 0; i < 10; i++)
    delete[] p[i];
delete[] p;



--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
pablo
Дата 4.12.2005, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 320
Регистрация: 12.2.2005
Где: Вильнюс, Литва

Репутация: 4
Всего: 6



делаютя так:

Код

int p [10][10];






--------------------
Первый блин всегда похож на сферу, иногда бывает и куб.
PM MAIL ICQ   Вверх
Guest
Дата 4.12.2005, 17:12 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











а об нью-ить как? Или они будут постфактум обнью-ены? smile
  Вверх
Guest
Дата 4.12.2005, 17:14 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(Void @ 4.12.2005, 17:09)
  delete[] p[i];
delete[] p;

и зачем скобки после деитов? smile
  Вверх
Void
Дата 4.12.2005, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 40
Всего: 173



Цитата(Guest @ 4.12.2005, 19:12)
а об нью-ить как? Или они будут постфактум обнью-ены?

В первом варианте память будет выделена динамически, в куче. Во втором - в стеке, и освобождена будет автоматически.
Добавлено @ 17:17
Цитата(Guest @ 4.12.2005, 19:14)
и зачем скобки после деитов?

Динамически созданные массивы удаляются оператором delete[], а не delete.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
Dray
Дата 4.12.2005, 17:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Материалист
**


Профиль
Группа: Участник
Сообщений: 652
Регистрация: 7.10.2003
Где: г. Всеволожск

Репутация: 2
Всего: 6



Цитата(Void @ 4.12.2005, 17:09)
// а удалять так:
for (int i = 0; i < 10; i++)
    delete[] p[i];
delete[] p;

Помоему delete[] освобождает память у массивов любой размерности полностью.
И будет достаточно delete[] p чтобы всё отчистить. Скажите если я не прав.


--------------------
忍者

user posted image
PM MAIL   Вверх
Void
Дата 4.12.2005, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 40
Всего: 173



Dray
Не прав. Буквально на днях это обсуждалось. Число вызовов new должно совпадать с числом вызовов delete, в общем случае.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0460 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.