cin,cin.get(),cin.getline(),gets(),getchar()函数的用法

1.cin>>

用法a:最基本的流输入用法,接受一个数字或字符,自动跳过输入的空格。

用法b:接受一个字符串,但是遇到除开头外的空格则会终止输入。

 1 #include<iostream>
 2 using namespace std;
 3 
 4 int main()
 5 {
 6     char a[100];
 7     cin>>a;
 8     cout<<a<<endl;
 9     
10     return 0;
11 }

2.cin.get()

用法a:无参数,一次从输入行中提取一个字符,包括空格和回车键都作为一个输入字符。

#include<iostream>
using namespace std;

int main()
{
    char a;
    a=cin.get();
    cout<<a<<endl;
    
    return 0;
}

用法b:2个参数,格式为cin.get(字符串,接受字符数),接收一行字符串,包括空格和回车键都作为一个输入字符。(注意:cin.get(a,6)表示a接受5个字符+1个'\0'终止符,所以此例只接收了包含空格在内的5个字符)

 1 #include<iostream>
 2 using namespace std;
 3 
 4 int main()
 5 {
 6     char a[100];
 7     cin.get(a,6);
 8     cout<<a<<endl;
 9     
10     return 0;
11 }

用法c:3个参数,格式为cin.get(字符串,接受字符数,结束字符)

#include<iostream>
using namespace std;

int main()
{
    char a[100];
    cin.get(a,6,'k');
    cout<<a<<endl;
    
    return 0;
}

3.cin.getline() 

用法a:2个参数,格式为cin.getline(字符串,接受字符数),与cin.get()的用法b类似。

用法b:3个参数,格式为cin.getline(字符串,接受字符数,结束字符),与cin.get()的用法c类似。

 

4.gets()

用法:接受一个字符串,包括空格和回车,需包含“#include<string>”头文件。

 1 #include<iostream>
 2 #include<string>
 3 using namespace std;
 4 int main ()
 5 {
 6 char a[100];
 7 gets(a);
 8 cout<<a<<endl;
 9 return 0;
10 }

5.getchar()

用法:接受一个字符,包括空格和回车,需包含“#include<string>”头文件。

#include<iostream>
#include<string>
using namespace std;
int main ()
{
    char a;
    a=getchar();
    cout<<a<<endl;
    return 0;
}

可以看出,这几个函数都有类似或近似的用法,实际上在设计时函数原型时它已经被多次重载过以适应不同参数的情况,想想开发人员挺不容易啊~~

posted @ 2018-08-22 14:44  望三星  阅读(747)  评论(0编辑  收藏  举报