Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Стандартный класс string. Операции ввода-вывода строк.

Читайте также:
  1. Cоциальный паспорт класса
  2. II. Классификация переводческих ошибок
  3. II. О месте классических языков в духовной школе.
  4. II. Отнесение опасных отходов к классу опасности для окружающей природной среды расчетным методом
  5. II. Характеристика основных этапов проведения внеклассного мероприятия
  6. II. Цели и задачи организации учебно-воспитательной работы кадетского класса
  7. III. Организация деятельности кадетского класса

Ввод и вывод осуществляется путём, схожим с применяемым для строкового типа.

Операции << и >> перегружены для использования с объектами класса string, метод getline() принимает ввод, который может одержать пробелы или несколько строк.

Пример:

#include <iostream>

#include <locale>

using namespace std;

 

int main()

{

setlocale(LC_ALL,"Russian");

string full_name, nickname, address;

string greeting ("Здравствуйте.");

 

cout<<"Введите Ваше имя:";

getline (cin, full_name);

cout<<"Ваше имя:"<< full_name <<endl;

 

cout<<"Введите Ваш псевдоним:";

cin>>nickname;

 

greeting+=nickname;

cout<<greeting<<endl;

 

cout<<"Введите ваш адрес в несколько строк\n";

cout<< "Окончание ввода символ '$'\n";

getline (cin, address,'$');

cout<<"Ваш адрес:"<<address<<endl;

 

return 0;

}

Программа считывает имя пользователя, которое, возможно, содержит внутренние пробелы, используя метод getline(). Эта функция похожа на метод get(), используемый для строкового типа, но это не метод класса. Её первым аргументом является потоковый объект, из которого будет приниматься ввод (здесь это cin), а второй аргумент – это объект класса string, куда будет помещён текст. Переменная full_name будет затем выведена, используя cout и операцию <<.

Затем программа считывает псевдоним пользователя, который предположительно состоит из 1-го слова, используя cin и операцию >>. Наконец, программа использует вариант функции getline() с тремя аргументами для считывания адреса пользователя, в котором может быть несколько строк. Третий аргумент функции определяет символ, который используется для завершения ввода. В программе мы использовали символ ‘$’, который пользователь должен ввести, как последний символ строки перед тем, как нажать клавишу Enter. Если функция не имеет 3-го аргумента, то предполагается, что завершающим символом строки будет ‘\n’, представляющий клавишу Enter.


Дата добавления: 2015-09-03; просмотров: 80 | Нарушение авторских прав


Читайте в этой же книге: Перегрузка операций (операторов). Перегрузка операторов отношения и логических операторов. Перегрузка оператора присваивания. Перегрузка унарных операторов. | Перегрузка операций (операторов). Перегрузка операторов инкремента и декремента. Перегрузка оператора индексирования. Перегрузка оператора вызова функции. | Перегрузка операций (операторов). Перегрузка операторов доступа к членам класса. Перегрузка операторов new и delete. Функции преобразования типа. | Полиморфизм и виртуальные функции. Раннее и позднее связывание. Динамический полиморфизм. Виртуальные функции. Виртуальные и невиртуальные функции. | Полиморфизм и виртуальные функции. Применение динамического полиморфизма. Виртуальные деструкторы. Абстрактные классы и чисто виртуальные функции. | Длина самого длинного слова 10 | Самое длинное слово beautiful | Строковые потоки | Состояние формата (ОТНОСИТСЯ К ПОСЛЕДНЕМУ ВОПРОСУ, КОТОРЫЙ 24) | Работа с несовместимыми конструкциями. |
<== предыдущая страница | следующая страница ==>
Стандартный класс string. Зарезервированные слова и опции меню.| Описание таблицы акселераторов

mybiblioteka.su - 2015-2024 год. (0.007 сек.)