1.2 初识输入输出
标准输入输出对象
- cin:标准输入
- cout:标准输出
- cerr:标准错误,输出警告和错误消息
- clog:输出程序运行时的一般性信息
如何将两个数相加
#include <iostream> int main() { std::cout << "Enter two numbers:" << std::endl; int v1 = 0, v2 = 0; std::cin >> v1 >> v2; std::cout << "the numbers of " << v1 << " and " << v2 << " is " << v1 + v2 << std::endl; return 0; }
向流写入数据,从流读取数据
<< 运算符接受两个运算对象:左侧的运算对象必须是一个ostream对象,右侧的运算对象是要打印的值。输出运算符的计算结果就是其左侧运算对象。
>> 运算符接受两个运算对象:左侧的运算对象必须是一个istream对象,右侧的运算对象是要输入的值。输出运算符的计算结果就是其左侧运算对象。
endl:操纵符。结束当前行,并将与设备关联的缓冲区(buffer)中的内容刷到设备中。
使用标准库中的名字
程序中的前缀std::指出名字cout和endl是定义在名为std的命名空间(namespace)中的。命名空间可以帮助我们避免不经意的名字定义冲突,以及使用
库中相同名字导致的冲突。标准库中的所有名字都在命名空间std中。
1.2 节练习
练习 1.3:编写程序,在标准输出上打印Hello,World。
#include <iostream> int main() { std::cout << "Hello,World" << std::endl; return 0; }
练习 1.4:编写程序使用乘法运算符*来打印两个数的积。
#include <iostream> int main() { std::cout << "Enter two numbers: " ; int n1, n2; std::cin >> n1 >> n2; std::cout <<n1<<" * "<<n2<<" = " << n1 * n2 << std::endl; return 0; }
练习 1.5:我们将所有输出操作放在一个很长的语句中。重写程序,将每个运算对象的打印操作放在一条独立的语句中。
#include <iostream> int main() { std::cout << "Enter two numbers:" << std::endl; int v1 = 0, v2 = 0; std::cin >> v1 >> v2; std::cout << "the numbers of "; std::cout << v1; std::cout << " and "; std::cout << v2; std::cout << " is "; std::cout << v1 + v2; std::cout << std::endl; return 0; }
练习 1.6:解释下面程序片段是否合法。
std::cout << "the numbers of " << v1; << " and " << v2; << 左侧缺少ostream 对象 << " is " << v1 + v2 << std::endl; 左侧缺少ostream 对象
程序不合法。