首页 > 编程笔记

C++ get()函数:读取字符

get() 函数用于从输入流中读取单个字符或多个字符,istream 类重载了多个 get() 函数。常用的重载形式有以下三种。

1) 第一种形式

int get();
第一种重载形式的get()函数没有参数,返回值为int类型。get()函数的作用是从输入流读取一个字符,返回该字符的ASCII码值。

2) 第二种形式

istream& get(char& ch);
第二种重载形式的get()函数有一个char类型的引用作为参数,返回值为istream类对象引用。get() 函数的作用是从输入流读取一个字符存储到字符 ch 中。

3) 第三种形式

istream& get(char* dst, streamsize count,char delimiter);
第三种重载形式的 get() 函数有三个参数,其中:
在读取过程中,遇到结束符就结束读取,即使没有读取够 count−1 个字符,遇到结束符之后也会结束读取,结束符不包含在读取的字符串内。如果读取了 count−1 个字符也没有遇到结束符,则在结束读取时,系统自动在字符串末尾添加\0

【示例】下面通过案例演示 get() 函数的用法,C++ 代码如下:
#include<iostream>
using namespace std;
int main()
{
    char ch;
    cout<<"请输入一个字符串:"<<endl;
    cout<<"第一种形式:"<<cin.get()<<endl;
    cin.get(ch);
    cout<<"第二种形式:"<<ch<<endl;
    char buf[20];
    cin.get(buf,6,' ');
    cout<<"第三种形式:"<<buf<<endl;
    return 0;
}
运行结果:

请输入一个字符串:
I LOVE CHINA
第一种形式:73
第二种形式:
第三种形式:LOVE

示例分析:
由运行结果可知,当输入字符串“I LOVE CHINA”时:

优秀文章