请选择 进入手机版 | 继续访问电脑版

星辰生活网-江苏门户生活网

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
星辰生活网 门户 C++编程 查看内容

C++ cin.getline用法详解

2021-12-22 16:43| 发布者: admin| 查看: 506| 评论: 0

摘要: 使用C++字符数组与使用 string 对象还有另一种不同的方式,就是在处理它们时必须使用不同的函数集。例如,要读取一行输入,必须使用cin.getline而不是getline函数。这两个的名字看起来很像,但它们是两个不同的函数 ...
使用 C++ 字符数组与使用 string 对象还有另一种不同的方式,就是在处理它们时必须使用不同的函数集。例如,要读取一行输入,必须使用 cin.getline 而不是 getline 函数。这两个的名字看起来很像,但它们是两个不同的函数,不可互换。

与 getline 一样,cin.getline 允许读取包含空格的字符串。它将继续读取,直到它读取至最大指定的字符数,或直到按下了回车键。以下是其用法示例:

cin.getline(sentence, 20);

getline 函数使用两个用逗号分隔的参数。第一个参数是要存储字符串的数组的名称。第二个参数是数组的大小。当 cin.getline 语句执行时,cin 读取的字符数将比该数字少一个,为 null 终止符留出空间。这样就不需要使用setw 操作符或 width 函数。以上语句最多可读取 19 个字符,null 终止符将自动放在数组最后一个字符的后面。

下面的程序演示了 getline 函数的用法,它最多可以读取 80 个字符:
纯文本复制
  1. // This program demonstrates cinT s getline function
  2. // to read a line of text into a C-string.
  3. #include
  4. using namespace std;
  5. int main()
  6. {
  7. const int SIZE = 81;
  8. char sentence[SIZE];
  9. cout << "Enter a sentence: ";
  10. cin.getline (sentence, SIZE);
  11. cout << "You entered " << sentence << endl;
  12. return 0;
  13. }
程序输出结果:

Enter a sentence: To be, or not to be, that is the question.
You entered To be, or not to be, that is the question.


鲜花

握手

雷人

路过

鸡蛋

相关阅读

QQ|Archiver|手机版|小黑屋|星辰生活网 ( 苏ICP备2023005827号-1 )

GMT+8, 2024-7-20 20:47 , Processed in 0.045900 second(s), 16 queries .

Powered by Discuz! X3.4

© 2008-2023 东台智盾科技有限公司 版权所有

返回顶部