21xrx.com
2025-03-26 22:41:58 Wednesday
文章检索 我的文章 写文章
C++输入多行示例
2023-07-08 20:17:57 深夜i     --     --
C++ 输入 多行 示例

在C++编程中,输入多行数据可能是一个常见的任务。本文将介绍如何在C++中输入多行数据,以及提供几个输入多行数据的示例。

1. 使用getline()函数输入多行数据

C++中的getline()函数可以用来输入一行数据,并将其存储为一个字符串类型。该函数需要两个参数:输入流和字符串变量。通过在循环中多次调用该函数,可以输入任意多行数据。

下面是一个简单的示例,演示如何使用getline()函数输入多行数据:

#include <iostream>
#include <string>
using namespace std;
int main() {
  string line;
  while (getline(cin, line))
    cout << line << endl;
  
  return 0;
}

在此示例中,通过使用getline函数从标准输入流istream中读取每一行输入。如果输入结束,则getline函数将返回false,通过这种方式,实现了从标准输入读取任意数量行的数据。

2. 使用cin.get()函数输入多行数据

如果想逐个字符读取输入数据,则可以使用cin.get()函数。下面的示例演示了如何逐个字符地输入多行数据:

#include <iostream>
using namespace std;
int main() {
  char ch;
  while ((ch = cin.get()) != EOF) {
    cout.put(ch);
  }
  return 0;
}

在此示例中,我们使用cin.get()函数从标准输入流中逐个字符地读取输入,使用endl将读取的所有字符打印到屏幕上。

3. 使用cin.ignore()和cin.peek()函数输入多行数据

cin.ignore()函数可以用来忽略某些字符,而cin.peek()函数可以用来查看下一个字符而不会将其从输入流中删除。我们可以使用这些函数来输入多行数据。

下面的示例演示了如何使用cin.ignore()和cin.peek()函数输入多行数据:

#include <iostream>
#include <limits>
using namespace std;
int main() {
  char ch;
  while (cin.peek() != EOF) {
    cin.ignore(numeric_limits<streamsize>::max(), '\n');
    cout << "Enter a line: ";
    while ((ch = cin.get()) != '\n')
      cout << ch;
    
    cout << endl;
  }
  return 0;
}

在此示例中,我们使用cin.ignore()和cin.peek()函数,从标准输入流中读取多行数据。在每次循环中,我们先使用cin.ignore()函数忽略输入中的一行,然后使用cin.get()函数逐个字符地读取输入,直到读取完成一行数据。

通过以上的几个示例,你应该已经学会了如何在C++中输入多行数据。任何一个涉及到大型输入文件读取或键盘输入的程序,都会用到输入多行数据的技巧。相信这篇文章能够帮助你更好地掌握C++的输入多行数据技巧。

  
  

评论区