1.get()

使用gas函数可以输入一个或多个字符,有多种重载格式,其函数原型如下:

(1)int get();
(2) istream& get(char& c);
(3) istream& get(char * s, streamsize n);
(4) istream& get(char* s, streamsize n, char delim);
(5) istream& get(streambuf& strbuf);
(6) istream& get(streambuf& strbuf, char delim);

其中,前两个函数可以从输入流中读取一个字符,
第(1)个函数返回值是读取的字符的
ASCⅡ值,
第(2)个函数把读取的字符存储在变量c中;
第(3)个和第(4)个函数从输入流中读取二1个字符或者遇到换行符n(第(3)个函数)遇到 delim(第(4)个函数)表示的终止符结束,读取的字符存储到C语言风格的字符串s中,在字符串s的末尾自动添加空字符10;
最后两个函数从输入流中读取字符插入 strbuf表示的输出流中,遇到\n或 delim表示的终止符结束。
注意:
多余的字符、换行符‘\n’、终止符delim仍然留在输入流中
例如:

char ch;
ch = cin.get();//使用第一个函数
cin.get(ch);   //使用第二个函数
char str[20];
cin.get(str, 20);//最多读取19个字符,或者遇到换行符结束
cin.get(str, 20, '*');//最多读取19个字符,或者遇到‘*’结束
cin.get(*cout.rdbuf());//从输入流中读取字符并输出到显示器上,遇到换行符结束
cin.get(*cout.rdbuf(),'*');// 从输入流中读取字符并输出到显示器上,遇到‘*’结束

2.getline()

getline()函数从输入流中提取多个字符。其函数原型如下:

(1) istream& getline(char * s, streamsize n);
(2) istream& getline(char* s, streamsize n, char delim);

从输入流中读取n-1个字符,遇到换行符"n’结束(第(1)个函数)或者遇到终止符delim(第(2)个函数)结束,把读取的字符存储在C语言风格的字符串s中,在s的末尾自动添加空字符‘\0’。
与get()函数不同的是, getline(函数的换行符n和终止符deim从输入流中读出并丢弃,不存储在字符串s中。
如果未读取到字符,或者读取n-1个字符后仍然没有遇到终止符,流状态标志 failbit被设置。如果终止符恰好是第n个字符,即读取n-1个字符后恰好遇到终止符,流状态标志 failbit不会被设置。
注意:
用get(函数或 getline()函数读取多个字符构成的字符串只能存储到C语言风格的字符数组中,如果用 string对象存储字符串,则不能使用上述两个 Istream的成员函数,应该使用全局函数 getline()。其函数原型如下:

(1)istream& getline(istream& is, string& str);
(2)istream& getline(istream& is, string& str, char delim);
(3)istream& getline(istream&& is, string& str);
(4)istream& getline(istream&& is, string& str, char delim);

我们主要使用前两个重载函数,其功能是从输入流is中读取字符存储到 string类型的对象str中,遇到换行符\n’(第(1)个函数)或终止符 delim(第(2)个函数)时结束。例如:

string s;
getline(cin, s);

3.read()

read()函数原型如下:

istream& get(char * s, streamsize n);

**函数功能:**从输入流中读取n个字符存储到首地址是s的内存空间中。如果还未读取
n个字符就到文件末尾,则把实际读取的字符串存储到s中,流状态标志 eorbit和 failbit被设置。

c++中用于字符输入的函数相关推荐

  1. python中求和公式是什么函数_Python的math库中,用于求和的函数是( )。

    [单选题]确定兴利库容 V 兴 ,已知某水库为一回运用水库,其一次蓄水量为 V 1 =300 万 m 3 ,一次供水量为 V 2 =150 万 m 3 . [ ]. [单选题]hAB大于0说明B点的高 ...

  2. c语言中用于读写的函数,吉大18秋学期《C语言程序设计》在线作业二(含答案)题目...

    =a[n-1-i];a[n-1-i]=t;}}main(){intb[10]={1,2,3,4,5,6,7,8,9,10};inti,s=0;reverse(b,8);for(i=6;i<10; ...

  3. php用于字符串函数是,php中用于查找字符串的常用函数

    php中用于查找字符串的常用函数,包括strstr.stristr.strpos.substr等,本文主要为大家介绍strstr的使用,感兴趣的朋友不妨参考下. 一.strstr  查找字符串的首次出 ...

  4. python返回绝对值的函数_Python中用于返回绝对值的abs()方法

    Python中用于返回绝对值的abs()方法 方法abs() 返回x的绝对值,-x-零之间的(正极)的距离. 语法 以下是abs()方法的语法: abs( x ) 参数 x -- 这是一个数值表达式 ...

  5. 生成随机小数的函数python_哪个选项是random库中用于生成随机小数的函数?

    [其它]一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数.试编写代码输出该整数. 要求(1)粘贴代码图片(图片需包括行号),代码不可超过6行(争取4行); (2)粘贴结果图片, ...

  6. python中用什么函数去掉空格_Python中用于去除空格的三个函数的使用小结

    函数:strip()  lstrip()  rstrip() 作用:去除字符串中的空格或指定字符 一.默认用法:去除空格str.strip()  : 去除字符串两边的空格 str.lstrip() : ...

  7. USART库函数中用于清除标志位的一些函数,如读DR寄存器的值清除标志位

    USART库函数中用于清除标志位的一些函数,如读DR寄存器的值清除标志位 刚学M4没多久,对于库函数的使用还有些陌生,因为之前学的是寄存器配置,今天在用库函数配置usart的时候,遇到了不知道该调用哪 ...

  8. Matlab中用于数据预测spline()函数的使用

    Matlab中用于数据预测spline()函数的使用 ​ 再matlab中spline函数是利用三次方样条数据插值 语法 s = spline(x,y,xq) pp = spline(x,y) s = ...

  9. 函数指针--Nginx和Redis中两种回调函数写法

    1.Nginx和Redis中两种回调函数写法 #include <stdio.h>//仿Nginx风格 //结构外声明函数指针类型 typedef void (*ngx_connectio ...

最新文章

  1. 2021年大数据ELK(十七):Elasticsearch SQL 订单统计分析案例
  2. 安全多方计算(MPC)从入门到精通:JUGO-IDE及SDK
  3. 最近...(2019-03-18~2019-04-03)
  4. 7分钟理解JS的节流、防抖及使用场景
  5. “开源、共享、创新” 2020 中国.NET开发者大会小结
  6. ironpython console怎么用_如何在表單中插入ironpython控制台?
  7. BBR开启教程(转)
  8. SQL服务器引擎---协议
  9. nginx ngx_http_index_module(默认初始页)
  10. linux没有c编译器,兄弟们,我这有台电脑里的Linux缺少cc(C编译器),我该怎么把它补上去啊?急啊!!!...
  11. USACO_1_2_Dual Palindromes
  12. 无法鼠标拖动选择_在 iPad 上用鼠标体验怎么样?我用这 12 款 App 试了一下
  13. 文QT5下载安装教程
  14. 在Cadence中使用ADE进行蒙特卡洛仿真
  15. 平面标定(Homography变换)
  16. 线和面的方程区别_直线方程和平面方程的区别
  17. idea 查看方法在哪被调用快捷键_IntelliJ IDEA最常用快捷键快速查看手册-工欲善其事,必先利其器...
  18. 新闻——覃雄派、王会举、杜小勇、王珊论文两次入选“领跑者5000—中国精品科技期刊顶尖学术论文”
  19. 从冯诺伊曼结构看AI
  20. ‘parent.relativePath‘ points at com.xxx instead of org.springframework.boot:spring-boot-starter的快速解决

热门文章

  1. flink启动命令参数_Flink集群部署
  2. signature=5edb6549fd9da7abd1cea3d5008f5c15,IMPLEMENTING INVERTED MASTER-SLAVE 3D SEMICONDUCTOR STACK
  3. linux服务器curl,在Linux系统下使用curl自定义HTTP头的方法
  4. mysql replication health is not ok_MySQL的高可用——MHA
  5. 【哲学】形而上学具体指什么?metaphysics
  6. 分布式系统——网络监视系统zabbix3.4.2,以及向zabbix中添加被监视主机(一)
  7. Graph Destruction 并查集,图论(500)
  8. android componentname activity,ComponentName的使用
  9. Java线程知识整理汇总
  10. php在sql中添加数据,使用php在oracle数据库中插入数据