c++中的cin.get()的用法

cin.get()的用法

说明:cin.get()是针对char类型的,如果想得到int等其他的类型需要进行类型转化

1:变量名(char)=cin.get();

用来获取输入的第一个字符


例如:
char ch;
ch = cin.get();//或cin.get(ch);
cout << ch;

//若输入abc则输出a


2:cin.get(字符数组名,20)//20指的是输入字符串的个数

这里对比cin(cin遇到空格就读取结束)而cin.get(字符数组名,20)可以读取空格

例如:
char arr[20];
cin.get(arr,20);
cout << arr;

注意这里只会输出19个元素(最后一个为'\0'终止符)


3:cin.get()用于舍弃输入流的不需要的字符(比如回车什么的)
比如下面的例子:
char a[10];
char b[10];
cin.get(a,10);
cin.get(b,10);

cout << a << " " << b;


这里有一个隐含的易错点,就是cin.get()是不会舍弃行尾的换行符的
也就是说如果你是输入a后回车在输入b你会发现你不能输入b程序就输出结束了
或者你输入a后空格在输入b,a是从行头开始取,去满在下一个b
这里与cin.getline()不一样,cin.getline(是丢弃行尾的换行符的)

这里就可以用cin.get()还去除换行符


上面的程序可以这么改
char a[10];
char b[10];
cin.get(a,10);
cin.get();//去除a输入完毕后的回车
cin.get(b,10);
cout << a << " " << b;

猜你喜欢

转载自blog.csdn.net/qq_41682681/article/details/80813747
今日推荐