С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
dane.yeah
15 / 15 / 1
Регистрация: 08.04.2012
Сообщений: 133
#1

Вектор, getline и char* - C++

12.12.2013, 02:31. Просмотров 246. Ответов 1
Метки нет (Все метки)

Собственно нужно получать из файла какую-нибудь рандомную строку, проблема в формате char*. Единственное что вижу, это костыль с c_str(). Но может просто есть функция в замену getline которая будет работать с char*, а не со string

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
char * GetDataOfFile (const char *FileName) {
    char *data;
    vector <char*> Vdata;
    ifstream labfile(FileName);
    if(!labfile.is_open()) {
        cout << "Ошибка! Поток не открыт!" << endl;
        system("pause");
    }
    else {
        while(getline(labfile,data)) {
            try {
                Vdata.push_back(data);
            }
            catch (...) {
                labfile.close();
                throw;
            }
        }
        data = Vdata[rand%lines.size()];
    }
    return data;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2013, 02:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вектор, getline и char* (C++):

Можно ли использовать cin.getline для указателя типа char* - C++
Вот к примеру код он работает, но при отладке Ошибка доступа. #include &lt;iostream&gt; using namespace std; struct EXAMPLE{char* pName;...

С помощью cin.getline считать все строки файла в контейнер (вектор или очередь) - C++
Можете пожалуйсто написать код, где можно с помощью cin.getline считать все строки файла в контейнер (вектор или очередь), потом из...

Считать посимфольно из файла в char вектор - C++
Например в файле записаны: aaaaaaa bbbbbbb надо считать первую строчку в вектор char посимвольно, потом происходит сравнение с другим...

вектор string в масив указателей на char - C++
Доброго дня, комрады. Вот несколько дней как начал разбираться в С++ по 4-му вводному курсу липмана. наткнулся на задачку в общем-то...

Вектор строк и массив указателей на тип char - C++
Помогите, пожалуйста, с одной задачей. Сижу голову ломаю. Никак не могу понять почему эта ошибка выскакивает. Напишите программу,...

Чтение текстового файла в вектор типа char - C++
Имеется текстовый файл. Необходимо прочитать его ПОЛНОСТЬЮ, включая все символы переноса строки (и 0A и 0D), все пробелы, нулевые символы...

1
gray_fox
What a waste!
1522 / 1227 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
12.12.2013, 02:40 #2
Цитата Сообщение от dane.yeah Посмотреть сообщение
Но может просто есть функция в замену getline которая будет работать с char*, а не со string
C++
1
labfile.getline(data, maxDataLength)
maxDataLength здесь - максимальная длинна строки. basic_istream::getline.

Добавлено через 5 минут
Память под строку уже должна быть выделена, если что.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2013, 02:40
Привет! Вот еще темы с ответами:

Отличие getline() от cin.getline() - C++
Чем отличается getline() от cin.getline() ?

Отсортировать вектор типа char (от меньшего кол-ва символов в слове к большему и наоборот) - C++
Подскажите, как отсортировать вектор типа char (от меньшего кол-ва символов в слове к большему и наоборот)

Объясните разницу между "cin.getline" и "std::getline" - C++
string a; cin.getline(a); getline(cin, a);в чем разница между &quot;cin.getline(a);&quot; и &quot;getline(cin, a);&quot;

Класс "вектор" с конструкторами, позволяющими создать нулевой вектор и вектор с произвольным числом элементов - C++
Привет! Задача следующая. Нужно реализовать класс &quot;вектор&quot; с конструкторами, которые позволяют создать нулевой вектор и вектор с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.