Chapter 1 Getting Started
1.2 初识输入输出
输出运算符(<<)
<<运算符接受两个运算对象:左侧的运算对象必须是一个ostream对象,右侧的运算对象是要打印的值。
此运算符将给定的值写到给定的ostream对象中。输出运算符的计算结果就是其左侧运算对象。即,计算结果就是我们写入给定值的那个ostream对象。
我们的输出使用了两次<<运算符。因为此运算符返回其左侧的运算对象,因此第一个运算符的结果成为了第二个运算符的左侧运算对象。
这样,我们就可以将输出请求连接起来。因此,我们的表达式等价于
(std::cout<<"Enter two numbers:")<<std::endl;
链中每个运算符的左侧运算对象都是相同的,在本例中是std::cout。
字符串字面值常量(string literal)
std::endl 操作符(manipulator)
WARNING 程序员常常在调试时添加打印语句。这类语句应该保证“一直刷新流。否则,如果程序崩溃,输出可能还留在缓冲区中,从而导致关于程序崩溃位置的错误推断。
使用标准库中的名字
命名空间(namespace)
:: 作用域运算符
从流读取数据
**输入运算符(>>)**与输出运算符类似,它接受一个istream作为其左侧运算对象,接受一个对象作为其右侧运算对象。它从给定的istream读入数据,并存入给定对象中。与输出运算符类似,输入运算符返回其左侧运算对象作为其计算结果。
▧ istream(输入流)类型,提供输入操作
▧ ostream(输出流)类型,提供输出操作
▧ cin,一个istream对象,从标准输入读取数据
▧ cout,一个ostream对象,向标准输出写入数据
▧ cerr,一个ostream对象,通常用于输出程序错误信息,写入到标准错误。
▧ >>运算符,用来从一个istream对象读取输入数据
▧ <<运算符,用来向一个ostream对象写入输出数据
▧ getline函数,从一个给定的istream读取一行数据,存入一个给定的string对象中。