[C ++ istream.get()提取后返回换行符

问题描述 投票:0回答:1

Here是最小代码的链接,如果它不存在,就是您想在cpp.sh中运行它:

<!-- language: cpp -->
#include <iostream>

int main()
{
  int num1;
  int num2;
  std::cout << "Enter num1: ";
  std::cin >> num1;
  std::cout << std::cin.get() << "\n";
  std::cout << "Enter num2: ";
  std::cin >> num2;
  std::cout << std::cin.get() << "\n";
  std::cout << "You're nums: " << num1 << ", " << num2 << "!\n";
}

我对cin.get()为什么返回ASCII'LF'(解析为“ 10”)感到困惑,即使cin >> num1已在整行中读取。

c++ iostream ifstream cin istream
1个回答
0
投票

[std::cin.get()在按下Enter键时读取语句std::cin >> num2;之后的输入缓冲区中存储的换行符。

© www.soinside.com 2019 - 2024. All rights reserved.