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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.05.2013, 01:06   #1
alextrof94
Форумчанин
 
Регистрация: 16.03.2013
Сообщений: 599
По умолчанию C++. Динамический массив массивов символов

В общем нужен динамический массив "строк", как его можно организовать?
Я тут все пытаюсь как то с new работать, но как то не выходит(
alextrof94$gmail.com

Последний раз редактировалось alextrof94; 08.05.2013 в 01:10.
alextrof94 вне форума Ответить с цитированием
Старый 08.05.2013, 01:27   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

Код:
char **m = new char*[10];
for (int i = 0; i < 10; ++i) {
  m[i] = new char[100];
}
10 массивов по 100 символов.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 08.05.2013, 01:44   #3
alextrof94
Форумчанин
 
Регистрация: 16.03.2013
Сообщений: 599
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
Код:
char **m = new char*[10];
for (int i = 0; i < 10; ++i) {
  m[i] = new char[100];
}
10 массивов по 100 символов.
спасибо. я это уже находил, хотел спросить, как организовать перераспределение памяти вроде realoca, но потом подумал и решил сделать правильнее... подсчитать количество строк прежде, чем загружать данные.
Изначально хотел:

Цикл пока файл не кончился
счетчик++
перераспределить(стр, счетчик)
файл >> стр
конец цикла

сейчас же отдельным циклом считаю, отдельным объявляю, отдельным ввожу
alextrof94$gmail.com
alextrof94 вне форума Ответить с цитированием
Старый 08.05.2013, 22:02   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

Чтение из файла - дорогая операция, так что несколько проходов по файлу нехорошо. Можно ведь использовать realloc в c++.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 09.05.2013, 00:14   #5
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

alextrof94

В общем нужен динамический массив "строк", как его можно организовать?

в С++ - очень легко:

#include <string>
#include <vector>

std::vector<std::string> arr;

чтение из файла

std::ifstream ifs("zzz.txt");
std::string s;

while (std::getline(ifs, s))
arr.push_back(s);
Rififi вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Распечатать на экране монитора таблицу символов, используя только циклы (без массивов) Лео Месси Помощь студентам 6 04.03.2013 23:02
Динамический список массивов – стеков kitcon Помощь студентам 2 09.05.2011 02:44
Динамический массив - или всё таки не динамический? vedro-compota Общие вопросы C/C++ 30 10.12.2010 23:22
Динамический массив символов IIPOTUBBCEX Помощь студентам 1 28.04.2010 23:23
Обработка массивов символов. Dmitri91 Помощь студентам 1 19.10.2009 09:08