|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
21.10.2010, 16:03 | #1 |
Пользователь
Регистрация: 10.11.2008
Сообщений: 93
|
Файловый ввод с использованием потоков
Всем привет. У меня есть файл m1.txt , где зранятся элементы двумерного массива (матрицы). Подскажите, как считать эти элементы из файла , чтобы дальше работать с этой матрицей?
Необходимо работать с классом fstream. ifstream m1; m1.open("m1.txt",ios::in); я всего лишь открыл файл и создал поток, как быть дальше? Спасибо. |
21.10.2010, 16:43 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
ну теперь читайте с него данные, в каком они формате у вас записаны?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
21.10.2010, 18:10 | #3 |
Форумчанин
Регистрация: 26.03.2010
Сообщений: 538
|
Если в файле в тестовом виде хранятся элементы массива, то создаешь массив типа char и в него считываешь данные из файла
Код:
Единственный способ стать умнее - играть с более умным противником.
|
21.10.2010, 22:41 | #4 |
Пользователь
Регистрация: 10.11.2008
Сообщений: 93
|
у меня размер матрицы( там будут только квадратные массивы) произволен и может меняться. Элементы только численные.
Мне имено и не понятно как с файла стянуть все элементы... |
21.10.2010, 23:07 | #5 |
Форумчанин
Регистрация: 26.03.2010
Сообщений: 538
|
Если размер файла будет менятся, то я бы написал функцию возвращающую размер файла, например
Код:
Т.о размерность массива, в который ты будешь считывать данные будет известна. Потом ты считываешь данные из файла в этот массив, затем я бы создал строку, которая бы хранила считанные данные Код:
Единственный способ стать умнее - играть с более умным противником.
|
22.10.2010, 10:19 | #6 |
Старожил
Регистрация: 21.03.2009
Сообщений: 2,193
|
Предполагая, что файл у нас текстовый, дам вам пример записи/чтения массива целых чисел.
Код:
Код:
Код:
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта Тема на форуме, посвященная ему же |
24.10.2010, 18:46 | #7 |
Пользователь
Регистрация: 10.11.2008
Сообщений: 93
|
Поясните пожалуйста часть кода
Код:
|
24.10.2010, 18:56 | #8 |
Форумчанин
Регистрация: 20.10.2010
Сообщений: 143
|
никак, просто чтобы матрица была квадратной, надо чтобы количество столбцов было равно количеству строк. А если они не равны - то не важно какие у них значения, матрица квадратной уже не будет
451 -870-7(три)6. Выполняю работы на заказ, гарант честности - ВМ аттестат с 60+ БЛ без претензий
|
24.10.2010, 19:24 | #9 |
Пользователь
Регистрация: 16.03.2010
Сообщений: 58
|
какой-то бред)
придумай свою структуру, как ты будешь хранить свои матрицы и радуйся допустим 1 2 3 4\n2 3 4 5\n И тут необязательно кадратные матрицы, только валидацию количества элементов в строке сделать и всё... а если матрицы зарание квадратные то можно и в одну строку лепить, но ИМХО зачем? Другой вариант сделать что-то вроде сериализации твоего класса или чего-то там под названием Matrix в бинарный вид, и записть в файл, потом десериализация.. |
24.10.2010, 20:10 | #10 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Кстати а что с этой матрицей делать потом нужно?
Может и вправду не стоит в памяти организововать массив. а оперировать со считанным по ходу считывания?
I'm learning to live...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Файловый ввод-вывод | Оля_1991 | Помощь студентам | 0 | 10.10.2010 14:12 |
Файловый ввод с++ | Blad47 | Помощь студентам | 3 | 07.10.2010 17:05 |
Файловый ввод вывод | GrihaI | Общие вопросы C/C++ | 4 | 31.05.2010 02:45 |
вычисления с использованием потоков | Sparky | Помощь студентам | 0 | 19.02.2010 18:09 |
Синхронизация потоков с использованием именованых каналов | _Денис | Помощь студентам | 0 | 09.01.2010 16:58 |