【问题标题】:I tried to input N times into a char type variable, and 'input' works only one time but 'output' works N times我尝试将 N 次输入到 char 类型变量中,“输入”只工作一次,但“输出”工作 N 次
【发布时间】:2020-04-22 17:55:36
【问题描述】:

当我在n 中输入 5 并为 a 输入“12345”时,cin 只工作一次,但 cout 工作 5 次。 怎么可能?

int main(){
   int n;
   cin >> n;
   char a;

   for(int i=0; i<n; i++){
      cin >> a;
      cout << a << ' ';
   }

   return 0;
}

【问题讨论】:

  • 请详细说明问题。 “只工作一次”是什么意思?最简单的方法是向我们展示预期和实际输出。因为我实际上无法重现您的问题:输入“5 12345”输出为“1 2 3 4 5” - 正如预期的那样,我猜。
  • 使用12345,您将 5 个字符写入流,cin 可以读取 5 次。
  • 尝试将char a更改为int astd::string a
  • char a; a char 是单个字符而不是字符串。它不可能容纳“12345”
  • 除非您告诉我们您实际预期会发生什么,否则不可能找到明确的答案。

标签: c++ char cin cout


【解决方案1】:

cin 也工作 5 次。 char 表示一个字符。在序列“12345”中,您有 5 个字符。当你输入这个时,你输入了 5 个值。所以,第一次cin 读取值 1,在读取值 '2' 之后,在 3 之后等等.. 这样,你会看到输出 1 2 3 4 5

【讨论】:

    猜你喜欢
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 2022-11-21
    • 2019-08-11
    • 2015-10-29
    • 2018-01-30
    • 2018-09-10
    • 1970-01-01
    相关资源
    最近更新 更多