人们真的还在使用cin和cout吗?

时间:2009-02-27 12:38:46

标签: c++

这完全是一个意见问题。更多的聊天。 我正在进行一些c ++测试,他们到处都是cin和cout's 人们是否仍然使用这些。我的意思是我从未在实际的公共应用程序中看到过。

我在测试中回答的最后一个问题是

int c1;
cout << "Enter numbers: " << flush;
for(int n = 0; cin >> c1; ++n){
   cout << c1 << endl;
}
When does this end.. 

正确的答案是“当用户点击ctrl + Z”时。在哪里我会按控制+ Z?我想,我在终端上假设。但老实说。我没有看到终端的年龄和年龄。我肯定不会尝试为它编程任何东西。

在我们的任何一个生活中,这样的问题是否仍然相关?

13 个答案:

答案 0 :(得分:22)

终端被广泛使用,并将被使用。原因在于,巧妙地使用它们时,它们比任何GUI都强大得多。

答案 1 :(得分:12)

不,这些问题不是很相关,但是,人们一直使用std :: cin和std :: cout。即使设计图形界面的人也可以使用cout进行调试!

答案 2 :(得分:9)

是的,只要存在控制台应用程序,就会存在cout和cin。

答案 3 :(得分:6)

所以你想说你是一名程序员并且从未使用或编写过控制台应用程序?

答案 4 :(得分:6)

当然这是相关的。

例如,各种服务器上的许多自动化和管理脚本都依赖于文本输出/输入。在* nix系统上尤其如此,而现在Powershell已经开始使用它的花哨对象支持了。

然后我们中的一些人(一个垂死的品种,我承认)在终端中非常活跃。我使用终端约占我工作的70-80%。我发现它比大多数相关的GUI应用程序更自然,更快速,更强大。

答案 5 :(得分:4)

是的,您可能想要处理或转换输入文本文件。这将证明是方便的。

答案 6 :(得分:3)

在我看来,要编写一个复杂的软件,这是一个很好的方法将GUI 与其余部分分开,即一般来说,其余部分必须是 即使没有GUI 也能工作。

在这种情况下,使用cin / cout管理I / O会很方便。

答案 7 :(得分:2)

  

人们是否仍然使用这些。我的意思是我从未在实际的公共应用程序中看到过。

定义公共应用程序。您认为任何* nix上的命令行工具如何使用?是的,我们也使用它们,用于我们的SDK(至少是cout和cerr)。当你有足够复杂的输入时,cin通常不是最好的 - 你只需要写一个词法分析器和一个解析器。

答案 8 :(得分:2)

如果您在职业生涯中只编写过GUI或Web应用程序,那么你可能对cin和cout没什么用处。如果您曾经写过任何内容,那么您将改变您的立场。您只需为控制台应用程序,基于文本的应用程序,GUI应用程序和Web应用程序使用不同的库集。

答案 9 :(得分:2)

我宁愿使用wcin和wcout,至少你得到了Unicode的东西。

答案 10 :(得分:2)

我参与了许多专业应用程序,我们没有在其中任何一个上使用cin或cout,即使是日志记录/调试。为什么?因为无状态* printf方法非常有效。多年来我学到的一件事是,无国籍者胜过有状态的可维护性。

答案 11 :(得分:1)

从语言的角度来看,如果“这个节目什么时候结束”是“收到EOF时”的答案,那将更容易接受。仅仅因为“Control-Z”在DOS中是EOF,并不意味着Ctrl-Z是正确的答案。

修改 编辑评论信息。

答案 12 :(得分:0)

我每天都使用std :: cin,std :: cout和std :: cerr。系统编程缺乏GUI。