|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.02.2013, 21:45 | #1 |
Пользователь
Регистрация: 10.05.2012
Сообщений: 11
|
не получается записать данные из файла в массив построчно
Всем добрый день, ситуация следующая:
не могу записать в вектор строки разной длины из файла допустим есть файл под названием first.txt в нем содержатся несколько имен mike sveta vasya dima aleks я хочу прочитать эти строки из файла и записать их в вектор под разными индексами, а затем вывести на экран, вот мой код C++ #include "stdafx.h" #include <iostream> #include <fstream> #include <vector> #include <conio.h> using std::cout; using std::ifstream; using std::ios; using std::endl; using std::vector; using std:fstream; int _tmain(int argc, _TCHAR* argv[]) { ifstream iFile ("first.txt", ios::in); if (!iFile) { cout << "file is not opened"; return 1; } const int length = 100; char string[length]; vector<char*> v1; while(!iFile.eof()) { iFile.getline (string, length, '\n'); v1.push_back (string); } iFile.close (); for (size_t j = 0; j < v1.size (); j++) сout << v1[j] << endl; cout << "finish" << endl; _getch (); return 0; } в момент циклического вывода на экран ничего не выводится, а происходят лишь отступы для строк затем выводится finish и программа завершается я нашел проблему, как я понял у меня в вектор каждая новая строка записывается сразу по всем прошлым индексам, перекрывая таким образом прошлые записи, но я не могу понять почему так происходит то есть в предпоследнем проходе в векторе будет хранится aleks aleks aleks aleks aleks буду очень благодарен, если кто подскажет в чем ошибка p.s. решение со стрингами не предлагать, знаю как сделать, интересует работа с указателями |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нужно получить данные из wav-файла в массив. | sazca | C# (си шарп) | 1 | 22.02.2012 12:08 |
Для каждого столбца найти произведение элементов с номерами от k1 до k2 и записать данные в новый массив | Nastassja.i | C# (си шарп) | 4 | 14.12.2011 16:49 |
Pascal: Из массива A записать данные в массив B без повтора (вкратце) | Cody M. | Помощь студентам | 5 | 18.02.2011 08:51 |
Прочитать файл и записать данные в массив | ChukCha | Общие вопросы C/C++ | 6 | 22.02.2009 19:56 |
как прочитать из файла имя, фамилию разделенные пробелами и записать их в массив парами | Rom@shka | Общие вопросы C/C++ | 2 | 13.12.2008 16:40 |