1,程序:
#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;
}
程序首先输出
Enter two numbers:
然后程序等待用户输入。如果输入3 7跟着一个换行符,则程序产生下面的输出:
The sum of 3 and 7 is 10
2,分析:
#include<iostream>
是一个预处理指示,告诉编译器要使用iostream库。
main函数中
std::cout<<"Enter two numbers:"<<std::endl;
<<是输出操作符,当操作符是输出操作符时,其结果是左操作数。
等价于
(std::cout<<"Enter two numbers:")<<std::endl;
或
std::cout<<"Enter two numbers:";
std::cout<<std::endl;
endl是一个特殊值,称为操作符(manipulator),将它写入输出流时,具有换行,并刷新与设备相关联的缓冲区。通过刷新缓冲区,用户可立即看到写入到流中的输出。注意的是当用户忘记刷新输出流可能会造成输出挺留在缓冲区中,一旦程序崩溃,将会导致对程序崩溃位置的错误推断。
前缀std::表明cout和endl是定义在命名空间std中的,使用命名空间,程序可以避免由于无意中使用了与库中所定义名字相同的名字而引致冲突。
std::cin>>v1>>v2;
>>是输入操作符,和输出操作符相似,结果是左操作数。
等价于
std::cin>>v1;
std::cin>>v2;
从标准输入读取两个值,第一个放入v1中,第二个放入v2中。