Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
kobyb
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 16
#1

функция getline() в dev_C++ - C++

01.12.2011, 19:11. Просмотров 1406. Ответов 6
Метки нет (Все метки)

Помогите пожалуйста, не могу разобраться с функцией getline()
Пишу на dev_C++ и не понемаю смысл работы функции. Она читает, пока не встретит символ конца строки?Почему у меня в выходном файле записался весь фаил input, а не только первая строка?Вот программа:
C++
1
2
3
4
5
6
7
8
9
{
    string s1;
    vector<string> v;
    ifstream fin ("input.txt");
    ofstream fout ("output.txt");
    while (getline(fin,s1))
          v.push_back(s1);
       for (int i=0; i<v.size();i++)
           fout << i+1 << ":" << v[i] << endl;
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mиxaил
531 / 436 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
01.12.2011, 19:22     функция getline() в dev_C++ #2
Она ( функция ) читает до конца потока... В данном случае, это файловый поток.
Jupiter
Каратель
Эксперт С++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
01.12.2011, 19:43     функция getline() в dev_C++ #3
Цитата Сообщение от Mиxaил Посмотреть сообщение
Она ( функция ) читает до конца потока
функция читает до конца строки,
Цитата Сообщение от kobyb Посмотреть сообщение
while (getline(fin,s1))
а вот так уже до конца потока
Mиxaил
531 / 436 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
01.12.2011, 21:13     функция getline() в dev_C++ #4
Jupiter, Ну да, я это и имел ввиду
kobyb
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 16
03.12.2011, 19:00  [ТС]     функция getline() в dev_C++ #5
а.....,помойму я вкурил....,а символы конца строки в этом потоке она пропускает?
Jupiter
Каратель
Эксперт С++
6549 / 3969 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
03.12.2011, 19:03     функция getline() в dev_C++ #6
Цитата Сообщение от kobyb Посмотреть сообщение
а.....,помойму я вкурил....,а символы конца строки в этом потоке она пропускает?
1-я строка у вас лежит в v[0], а вы

Цитата Сообщение от kobyb Посмотреть сообщение
for (int i=0; i<v.size();i++)
fout << i+1 << ":" << v[i] << endl;
выводите все строки
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.12.2011, 19:10     функция getline() в dev_C++
Еще ссылки по теме:

Функция getline и ifstream C++
Не работает функция getline(); C++
Функция cin.getline() C++
Функция getline(cin,.) C++
C++ Почему не работает функция getline ()?

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

Или воспользуйтесь поиском по форуму:
kobyb
1 / 1 / 0
Регистрация: 01.12.2011
Сообщений: 16
03.12.2011, 19:10  [ТС]     функция getline() в dev_C++ #7
спасибо)
Yandex
Объявления
03.12.2011, 19:10     функция getline() в dev_C++
Ответ Создать тему
Опции темы

Текущее время: 05:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru