- string[meta header]
- std[meta namespace]
- function template[meta id-type]
namespace std {
template <class CharT, class Traits, class Allocator>
std::basic_istream<CharT, Traits>&
operator>>(std::basic_istream<CharT, Traits>& is,
basic_string<CharT, Traits, Allocator>& str);
}
文字列をストリームから入力する。空白文字が現れるまで、あるいはsetw
マニピュレータで指定された数までの文字列を入力する。
この関数は、書式化入力関数(basic_istream
を参照)として作用する。
basic_istream<>::sentry
オブジェクトを構築する。sentry
オブジェクトが失敗を示した場合、何もしない。str.erase()
を呼び出す。- 以下のいずれかを満たすまで、文字を入力して
str.append(1, c)
と等価な方法で文字列に追加する。なお、c
は入力した文字を表す。- 最大文字数まで書き込んだ。最大文字数は次のいずれかである。
is.width()
が0
以上ならその値とする。- さもなくば、
str.max_size()
とする。
- EOFに達した。
- 空白文字に達した。空白文字の判定にはストリームに設定されているロケールが考慮される。
- 最大文字数まで書き込んだ。最大文字数は次のいずれかである。
is.width(0)
を呼び出す。
str
に1文字も入力が行われなかった場合、is.setstate(ios_base::failbit)
が呼び出される。
- 仮引数
is
。
#include <iostream>
#include <string>
int main() {
std::string a, b;
if (std::cin >> a >> b) {
std::cout << a << std::endl;
std::cout << b << std::endl;
}
}
- std::cin[link /reference/iostream/cin.md]
Apple Banana
Apple
Banana
getline
: このほかのbasic_string
に対する入力関数。- このほかの
>>
演算子関数