iostream库
由输出流ostream和输入流istream。标准库定义流四个IO对象。
istream流:
cin(读作see-in)称为标准输入;
ostream流:
cout(读作see-out)称为标准输出;
cerr(读作see-err)称为标准错误,用来输出警告和错误信息给程序使用者;
clog(读作see-log)用来产生程序执行的一般信息。
在标准输出时:std::cout << "helloworld!" << std::endl;
"<<"输出操作符
每个输出操作符实例都接受两个操作数,左操作数必须是ostream对象(如std::cout),右操作数是要输出的值,输出操作符的作用是将右操作数写到作为其左操作数的ostream对象。
输出操作符构成的表达式,返回的结果是其左侧的操作数(即std::cout)。
则上式等价于:
(std::cout<<"helloworld!")<<std::endl;
等价于:
std::cout<<"helloworld!";
std::cout<<std::endl;
其中endl是一个特殊值,称为操纵符(manipulator),将它写入输出流,具有换行作用并刷新与设备相关联的缓冲区(buffer)。
命名空间(namespace)
注意到std::cout了吗?cout的前缀std::表明cout定义在命名空间std中。使用命名空间是为了避免定义的名字和库中名字相同而引发冲突。"::"是作用域操作符,表明使用的是定义在命名空间std中的cout。
在标准输入时:std::cin >>v1 >>v2;
"<<"输入操作符
输入操作符接受一个istream对象作为其左操作数,接受一个对象作右操作数,它从左操作数(std:;cin)中读取数据并报存到右操作数中,返回值是左操作数。入操作符从标准输入读入两个值,将第一个存放在v1里,第二个存放的v2里。则上式等价于:
std::cin >>v1;
std::cin >>v2;
例子:i
# include <iostream>
int main()
{
std::cout << "Enter two numbers:" << std::endl;
int v1, v2;
std::cin >> v1 >> v2;
std::cout <<"The sum of " << v1 << " and " <<v2
<<" is " << v1+v2 <<std::endl;
return 0;
}