请问一下关于cin的有关问题
请教一下关于cin的问题
C++Primer Plus里的例子
#include <iostream>
int main()
{
using namespace std;
cout<<"What is your house built?\n";
int year;
cin>>year;
cout<<"What is its street address?\n";
char address[80];
cin.getline(address,80);
cout<<"Year built:"<<year<<endl;
cout<<"Address:"<<address<<endl;
cout<<"Done!\n";
return 0;
}
cin读取年份的时候,将回车键生成的换行符留在了输入队列中,cin.getline()看到换行符后,将认为是一个空行,将一个空字符串赋给address数组
1、我想问的是混合输入数字和面向行的字符串会导致问题,那混合输入字符串和面向行的字符串会导致问题吗?
2、还有输入数字然后按回车键后,回车键生成的换行符留在了输入队列,那么在其他的例子里,如果输入字符串然后按回车键,会把回车键生成的换行符留在输入队列吗?
3、如果数字和字符串一样的话,这里为什么强调是混合输入数字呢?
万分感谢!!
------解决思路----------------------
正确
C++Primer Plus里的例子
#include <iostream>
int main()
{
using namespace std;
cout<<"What is your house built?\n";
int year;
cin>>year;
cout<<"What is its street address?\n";
char address[80];
cin.getline(address,80);
cout<<"Year built:"<<year<<endl;
cout<<"Address:"<<address<<endl;
cout<<"Done!\n";
return 0;
}
cin读取年份的时候,将回车键生成的换行符留在了输入队列中,cin.getline()看到换行符后,将认为是一个空行,将一个空字符串赋给address数组
1、我想问的是混合输入数字和面向行的字符串会导致问题,那混合输入字符串和面向行的字符串会导致问题吗?
2、还有输入数字然后按回车键后,回车键生成的换行符留在了输入队列,那么在其他的例子里,如果输入字符串然后按回车键,会把回车键生成的换行符留在输入队列吗?
3、如果数字和字符串一样的话,这里为什么强调是混合输入数字呢?
万分感谢!!
------解决思路----------------------
正确