Читайте также:
|
|
Ввод и вывод осуществляется путём, схожим с применяемым для строкового типа.
Операции << и >> перегружены для использования с объектами класса 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 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Стандартный класс string. Зарезервированные слова и опции меню. | | | Описание таблицы акселераторов |