Реферат Курсовая Конспект
Потокове введення - раздел Программирование, Процедурно-орієнтоване (структурне) програмування Потокове Введення Досягається При Використанні Змінної Класу Istream Або Iost...
|
Потокове введення досягається при використанні змінної класу istream або iostream. Може застосовуватися з визначеним вхідним потоком cin чи із вхідним потоком, визначеним користувачем.
6. Операція витягу
Операція витягу читає послідовність символів із зазначеного потоку. Проміжки між символами видаляються. Операція витягу – це перевантажена операція >>. Вона визначена для всіх простих типів і покажчика на char.
int age, weight;
cout << “Enter age and weight: “ << flush;
cin >> age >> weight; // зчитує вік, а потім вагу
Операція витягу має ненульове значення доти, поки не зустріне символ кінця файлу (використовуючи операцію перетворення operator void*()).
char c;
while (cin >>c) // копіювати непусті символи з cin в cout
cout << c;
Операція витягу встановлює failbit, якщо символи, зчитувані з потоку, не мають необхідний тип. Установлює badbit, якщо при читанні відбулася помилка. Для класів може бути перевантажена тим же способом, що й операція вставки.
int get();
– витягає й повертає один символ із вхідного потоку, включаючи символи порожніх проміжків (пробіл, табуляція й т.п.). повертає значення EOF, якщо досягнуто кінець файлу (ніколи не встановлює failbit).
int c;
while((c = cin.get()) != EOF)
cout.put(c);
istream& get(char&);
istream& get(unsigned char&);
– витягає й повертає один символ із вхідного потоку, включаючи символи порожніх проміжків. Має ненульове значення доти, поки не досягнуто кінець файлу.
char c;
while(cin.get(c)) cout.put(c);
istream& get(char* buf, int limit, char delim = 'n' );
istream& get(unsigned char* buf, int limit, char delim = 'n' );
– читає символи з потоку доти, поки не буде зчитано зазначену кількість символів або поки не буде зчитано символ-обмежник. Обмежник не включається в зчитану послідовність символів і залишається в потоці.
istream& getline(char* buf, int limit, char delim = 'n' );
– читає символи з потоку доти, поки не буде зчитано зазначену кількість символів чи поки не буде зчитано символ-обмежник. Обмежник не включається в зчитану послідовність символів.
istream& read(char* buf, int count);
istream& read(unsigned char* buf, int count);
– читає рядок символів із потоку.
const int bufSize = 2048;
char buf[bufSize];
// ...
cin.read(buf, bufSize);
Якщо кінець файлу досягнуто до того, як було зчитано зазначену кількість символів, то встановлюється failbit.
istream& ignore(int limit = 1, int delim = EOF);
– видаляє з потоку зазначену кількість символів, поки не зустрінеться символ-обмежник.
int gcount();
– повертає кількість символів, прочитаних із потоку під час виконання останньої операції неформатованого введення.
istream& putback(char);
– поміщає символ назад у потік. Як правило, між успішними викликами get() у потік може бути повернутий один символ. Символ, що поміщається назад у потік, повинен бути символом, що був зчитаний із потоку, в іншому випадку результат непередбачений.
int peek();
– повертає наступний символ, що буде зчитаний з потоку, фактично не витягаючи його з потоку.
istream& seekg(streampos, seek_dir = ios::beg);
– переміщає позицію покажчика читання у файлі. Streampos – це значення цілого типу, а seek_dir – це точка відліку, від якої відраховується значення нової позиції: початок файлу, поточна позиція або кінець файлу.
file.seekg(i * 100);
file.seekg(100, ios::cur); // вперед на 100 байт
file.seekg(0, ios::end); // останній символ
streampos tellg();
– повертає поточну позицію покажчика читання у файлі потоку в байтах. Streampos – це значення цілого типу.
streampos mark = myFile.tellg();
istream& ws(istream&);
– витягає й видаляє символи порожніх проміжків із зазначеного потоку.
cin >> ws; // видаляє лідируючі пробіли.
– Конец работы –
Эта тема принадлежит разделу:
На сайте allrefs.net читайте: "Процедурно-орієнтоване (структурне) програмування"
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Потокове введення
Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов