我们当然不能只满足单纯的输出,当打开一个编程的大门,宣告自己来时,我们更愿意看到它也能作出反应。
#include<iostream>
#include<vector>
#include<string>
#include<algorithm>
#include<cmath>
using namespace std;
int main()
{
cout << "Please enter your first name(followed by 'enter'):\n";
string first_name;
cin >> first_name;
cout << "Hello," << first_name << "!\n";
}
再来玩点花样,除了字符类型的变量,我们再加点整数类型的变量。
#include<iostream>
#include<vector>
#include<string>
#include<algorithm>
#include<cmath>
using namespace std;
int main()
{
cout << "Please enter your name and age\n";
string first_name = "????"; //字符串变量
//"????"表示不知道名字
int age = -1;//整型变量(-1表示不知道年龄)
cin >> first_name >> age;
cout << "Hello," << first_name << "(age" << age << ")\n";
}
如果我们输入相反的顺序会怎么样?>> 和<<都是对类型非常敏感的,他会保证输入和定义的类型一致。假设我们输入22 uxiang ,22将读入first_name,它毕竟也算是字符串,没事,但是uxiang 不是整型,读入不了age,因此输出时会输出原本存在其中的“垃圾值”,至于具体是什么,我们也不知道。有一点要注意:使用>> 读取的字符串会被空格所终止,所以它只能读入一个单词,要是出现多个单词,也会有很多办法来解决。
int main()
{
cout << "Please enter your first and second names\n";
string first;
string second;
cin >> first >> second;
cout << "Hello," << first << " " <<second << "\n";
}