2个回答
展开全部
追问
看不懂,求言简意赅的解释复制去Google翻译翻译结果
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
基于C++,以下内容从cin,cin.getline()和cin.get()三方面讲解区分。
1、cin >> name;使用空白的(空格,制表符和换行符)来确定字符串的结束位置
所有计划输入str=a bb cccptr=e ff ggg
程序如下
#include <iostream>
#include <string>
using namespace std;
int main()
{
char str[20];
char ptr[20];
cout<<"Input str :";
cin >> str;
cout<<"Input ptr :";
cin >> ptr;
cout<<" str ="<<str<<"; ptr = "<<ptr<<endl;
return 0;
}
………………………………
输入并显示结果:
Input str :a bb ccc
Input ptr :
str =a;
ptr = bb
[Process completed - press Enter]
…………………………………………………………………………
2、cin.getline(name,size);
可以读取一行字符,它通过换行符来确定行尾,但不保存换行符
程序如下:
#include <iostream>
#include <string>
using namespace std;
int main()
{
char str[20];
char ptr[20];
cout<<"Input str :";
//cin >> str;
cin.getline(str,20);
cout<<"Input ptr :";
//cin >> ptr;
cin.getline(ptr,20);
cout<<" str ="<<str<<"; ptr = "<<ptr<<endl;
return 0;
}
………………………………
输入并显示结果:
put str :a bb ccc
Input ptr :e ff ggg
str =a bb ccc;
ptr = e ff ggg
[Process completed - press Enter]
………………………………………………………………………
3、cin.get(name,size);
可以同getlin()
1、cin >> name;使用空白的(空格,制表符和换行符)来确定字符串的结束位置
所有计划输入str=a bb cccptr=e ff ggg
程序如下
#include <iostream>
#include <string>
using namespace std;
int main()
{
char str[20];
char ptr[20];
cout<<"Input str :";
cin >> str;
cout<<"Input ptr :";
cin >> ptr;
cout<<" str ="<<str<<"; ptr = "<<ptr<<endl;
return 0;
}
………………………………
输入并显示结果:
Input str :a bb ccc
Input ptr :
str =a;
ptr = bb
[Process completed - press Enter]
…………………………………………………………………………
2、cin.getline(name,size);
可以读取一行字符,它通过换行符来确定行尾,但不保存换行符
程序如下:
#include <iostream>
#include <string>
using namespace std;
int main()
{
char str[20];
char ptr[20];
cout<<"Input str :";
//cin >> str;
cin.getline(str,20);
cout<<"Input ptr :";
//cin >> ptr;
cin.getline(ptr,20);
cout<<" str ="<<str<<"; ptr = "<<ptr<<endl;
return 0;
}
………………………………
输入并显示结果:
put str :a bb ccc
Input ptr :e ff ggg
str =a bb ccc;
ptr = e ff ggg
[Process completed - press Enter]
………………………………………………………………………
3、cin.get(name,size);
可以同getlin()
追答
3、get(name,size);
可以同getline读取一行字符,到不再读取并丢弃换行符,而是将换行符保留在输入的队列中,所以如果需要再次读取输入,则会被上一次保留的换行符直接结束输入,无法读取这次的输入。
可以通过在两次读取输入间插入:
cin.get();//可以吸收换行符
程序如下
#include
#include
using namespace std;
int main(){char str[20];
char ptr[20];
cout
#include
using namespace std;
int main(){char str[20];
char ptr[20];
cout<<"Input str :";
cin.get(str,20).get();//形式1
cout<<"Input ptr :";
cin.get(ptr,20);
cin.get();//形式2
cout<<" str ="<<str<<";
ptr = "<<ptr<<endl;
return 0;
}………………………………
输入并显示结果:
Input str :a bb ccc
Input ptr :e ff ggg
str =a bb ccc;
ptr = e ff ggg
[Process completed - press Enter]…………
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询