【问题标题】:how does the Cin and Cout objects work in a loopCin 和 Cout 对象如何循环工作
【发布时间】:2016-07-08 15:11:34
【问题描述】:

我有这段代码

int main()
{
   char ch;
   while (cin >> ch)
     cout << ch;
   return 0;
}

我在想cinwhile() 循环中是如何工作的?我的意思是,它有一个内部索引吗?

【问题讨论】:

  • cin 就像一个缓冲区。当您输入数据时,它会存储在队列中。当您从cin 读取数据时,队列或缓冲区中的数据(无论您想如何调用它)都会被删除。
  • 内部索引?为什么是的!在这里阅读更多:en.cppreference.com/w/cpp/io/basic_istream/tellg

标签: c++ while-loop iostream cin


【解决方案1】:

当你输入数据时,循环会继续,它只会在找到 EOF (End of File) ctrl + C (in windows) ctrl + D (in linux) 时停止

这在你需要测试很多case并且不确定有多少的情况下很有用,你可以输入你想要的次数,程序只有在找到文件结尾时才会停止!

示例输入

a
b
c
(ctrl + d)

示例输出

a
b
c
the program will finish because EOF was found!

请参阅此参考: http://www.cplusplus.com/reference/cstdio/EOF/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-16
    • 1970-01-01
    • 2013-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多