在 C++ 中,cin.getline() 函数用于从输入流中读取一行字符,并在读取到换行符 \n 时停止。这种读取会自动丢弃(忽略)换行符,不会保留在输入流中,因此不会对后续的读取操作造成干扰。
————————————————————————————————
连续两次使用 cin.getline() 的行为
如果你连续两次调用 cin.getline(),每次都从输入流中读取一行字符,并且用 cout 显示这些读取的内容,由于 cin.getline() 自动丢弃换行符,两次读取的内容将会分别显示在不同的行上。
————————————————————————————————
示例分析
让我们看一个具体的例子:
#include <iostream>
int main() {
const int MAX_LENGTH = 100;
char line1[MAX_LENGTH];
char line2[MAX_LENGTH];
// 读取第一行
std::cout << "Enter the first line: ";
std::cin.getline(line1, MAX_LENGTH);
// 读取第二行
std::cout << "Enter the second line: ";
std::cin.getline(line2, MAX_LENGTH);
// 输出两行内容
std::cout << "First line: " << line1 << std::endl;
std::cout << "Second line: " << line2 << std::endl;
return 0;
}
————————————————————————————————
连续两次使用 cin.getline() 的行为
如果你连续两次调用 cin.getline(),每次都从输入流中读取一行字符,并且用 cout 显示这些读取的内容,由于 cin.getline() 自动丢弃换行符,两次读取的内容将会分别显示在不同的行上。
————————————————————————————————
示例分析
让我们看一个具体的例子:
#include <iostream>
int main() {
const int MAX_LENGTH = 100;
char line1[MAX_LENGTH];
char line2[MAX_LENGTH];
// 读取第一行
std::cout << "Enter the first line: ";
std::cin.getline(line1, MAX_LENGTH);
// 读取第二行
std::cout << "Enter the second line: ";
std::cin.getline(line2, MAX_LENGTH);
// 输出两行内容
std::cout << "First line: " << line1 << std::endl;
std::cout << "Second line: " << line2 << std::endl;
return 0;
}