1."cin"获取键盘等输入设备输入的数字:
#include<iostream>
using namespace std;
int main()
{
int num;
cout<<"please input a num?"<<endl;
cin>>num; //获取键盘输入的数字
cout<<num;
return 0;
}2.“cin”获取输入设备输入的字符或字符串,但是遇到“空格键”,“Tab”,“Enter”后,都会停止获取:
#include<iostream>
using namespace std;
int main()
{
char name[20]; //定义字符型数组来存储字符串
cout<<"please input your name?"<<endl;
cin>>name;
cout<<name;
return 0;
} 3.“cin.get()”获取输入的字符或者字符串,字符串中含有空格同样可以正常输出:
#include<iostream>
using namespace std;
int main()
{
char name[20];
cout<<"please input your name?"<<endl;
cin.get(name,20); /*cin.get()中包含两个参数,一个是数组名字,另一个是字符长最大长度*/
cout<<name;
return 0;
} 4.“cin.getline()”获取输入的字符或者字符串,字符串中含有空格同样可以正常输出:
#include<iostream>
#include<string>
using namespace std;
int main()
{
string name;
cout<<"please input your name?"<<endl;
getline(cin,name,'s'); /*cin.getline()中包含三个参数,第一个是数组名字,第二个是字符串最长的长度,第三个是停止获取的对象*/
cout<<name; /*接上,第三个参数可以省略,省略时则表示默认为“\0”(\0是字符串默认结束的标志)*/
return 0;
} 5.“cin.getline()”获取多维字符串:
#include<iostream>
using namespace std;
int main()
{
int i=1;
char name[10][20]; /*例如,我们需要获取十位同学的名字,每位同学的名字长度不超过20个字符,并且名字了里面可能会包含空格*/
for(i=1;i<=10;i++)
{
cout<<"please input your name for student "<<i<<"?"<<endl;
cin.getline(name[i],20);
cout<<"student "<<i<<"'s name is: "<<name[i]<<endl;
}
return 0;
} 6.“gets()”获取字符串,空格适用:
#include<iostream>
#include<string> //gets()函数包含在string.h中
using namespace std;
int main()
{
char name[20];
cout<<"please input your name?"<<endl;
gets(name); //直接获取字符串
cout<<name;
return 0;
} 7.“getline()”获取字符串,空格适用:
#include<iostream>
#include<string> //getline()函数包含在string.h中
using namespace std;
int main()
{
string name; //注意此处为string类型
cout<<"please input your name?"<<endl;
getline(cin,name,'a'); /*getline()函数包含三个参数,第三个停止标志可以省略*/
cout<<name;
return 0;
} 8.“getchar()”获取一个字符:
#include<iostream>
using namespace std;
int main()
{
char name; //一次只能获取一个字符
cout<<"please input your name?"<<endl;
name=getchar(); //注意此处必须为赋值形式
cout<<name;
return 0;
} 以上代码全部在Dev C++5.11上运行成功。
本文详细总结了C++中不同方法获取输入的特性,包括cin、cin.get()、cin.getline()、gets()和getline()函数,尤其关注它们如何处理空格和字符串输入。

463

被折叠的 条评论
为什么被折叠?



