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

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

Войти
Регистрация
Восстановить пароль
 
Denisqwwq
38 / 32 / 1
Регистрация: 01.06.2013
Сообщений: 117
#1

Правильное понимание - C++

05.07.2013, 22:31. Просмотров 409. Ответов 3
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
ifstream file;
 
file.open(way1.c_str());
 
    getline(file, name);
    getline(file, fam);
    getline(file, otchestvo);
    file >> age;
    file.ignore();
    getline(file, info);
 
file.close();
Есть текстовый файл с содержанием:
Name
Fam
Otchestvo
28
Info

Тут мне важно понять принцип работы:
C++
1
file.ignore();
В моём понимание
C++
1
getline(file, )
будет считывать в переменную всю строку, включая
C++
1
"\n"
в конце каждой строки.
А вот при
C++
1
file >> age;
символ
C++
1
"\n"
считываться не будет.
Именно для этого приходится использовать
C++
1
file.ignore();
что бы в дальнейшем в
C++
1
getline(file, info);
попал не символ
C++
1
"\n"
а нужная информация.
Если я, что то не правильно понимаю, прошу меня исправить.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.07.2013, 22:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Правильное понимание (C++):

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

Правильное swprintf, правильное wprintf ? - C++
Вродеж бы по ,,инструкции,,.... ..... wchar_t str = L"tanya"; // обозначает, что строка не однобайтная, а двуб ...

Понимание С++ - C++
Приветствую. У меня такой вопрос. Если я сейчас учусь с++ (читаю книгу), то нужно в этой книге каждый пример понимать и что-то с ним...

не до понимание в наследовании - C++
у нас есть допустим 2 класса. Один circle, другой Point. Circle наследует от Point. Тоесть Point базовый класс а Circle производный. ...

3 программы на понимание - C++
Найти сумму двух матриц А(N,M) и В(N,M) Найти произведение двух матриц А(N,M) и В(M,K) Найти произведение матрицы А(N,M) на вектор В(N)...

Понимание сокращенного кода - C++
for (int i = A.size; i > 0; i -= 9) { s = 0; A.num = atoi (i >= 9 ? s + i - 9 : s); k++; } Пробегаемся по строке s и...

3
gray_fox
What a waste!
1522 / 1227 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
05.07.2013, 22:40 #2
Denisqwwq, всё правильно, если после age только перевод строки - ignore() "пропустит" только один символ.
1
Avazart
Эксперт С++
7433 / 5472 / 310
Регистрация: 10.12.2010
Сообщений: 24,383
Записей в блоге: 17
05.07.2013, 22:40 #3
basic_istream::getline
1
alsav22
5429 / 4824 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
06.07.2013, 02:50 #4
Цитата Сообщение от Denisqwwq Посмотреть сообщение
В моём понимании
C++
1
getline(file, )
будет считывать в переменную всю строку, включая
C++
1
"\n"
Насчёт слова "включая". Нельзя сказать, что '\n' будет считан в переменную. В переменную '\n' не попадёт. Образно говоря, будет извлечён из потока, но в переменную не помещён. Если по другом: то что до '\n' - будет скопировано в переменную, файловый курсор займёт позцию за '\n'.
1
06.07.2013, 02:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.07.2013, 02:50
Привет! Вот еще темы с ответами:

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

Понимание адреса, ссылки и указателя - C++
Гм... Конечно, стремно создавать подобную тему, однако, уж очень захотелось понять все это дело. Правда сколько раз ни пытался - не...

Понимание препроцессора в языке программирования - C++
Здравствуйте, вот думаю над этими вопросами, а препод говорит обьяснить более подробно, чтобы даже ребенок понял(что за фанатизм?)....

Задачка на понимание указателей, преобразование типов - C++
Написать функцию, принимающую вещественное число типа float, превращающую его в целое типа int с сохранением битового представления,...


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

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

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