当我在互联网上搜索这两个库之间的区别时,每个人都说 <iostream>
是C++的标准I/O库,而 <cstdio>
则是为C设计的。
我的教授说 cin>>
和 cout<<
不是很好的函数,如果我们多次使用 cin>>
,我们的应用程序肯定会崩溃。他还说,stdio
提供的输入和输出速度比 iostream
快近三倍。但是,我更喜欢使用 iostream
,因为它更方便,而且我也不知道我的教授是否正确。
你建议我使用什么?
当我在互联网上搜索这两个库之间的区别时,每个人都说 <iostream>
是C++的标准I/O库,而 <cstdio>
则是为C设计的。
我的教授说 cin>>
和 cout<<
不是很好的函数,如果我们多次使用 cin>>
,我们的应用程序肯定会崩溃。他还说,stdio
提供的输入和输出速度比 iostream
快近三倍。但是,我更喜欢使用 iostream
,因为它更方便,而且我也不知道我的教授是否正确。
你建议我使用什么?
使用 iostream
应该不会导致程序崩溃。它可能会比较慢,但这只是因为它试图与 stdio
进行交互。那种同步可以关闭1。在大多数情况下,使用 C++ 时,我建议使用 iostream
来获取输入,而不是使用 stdio
函数。
1 使用 std::ios::sync_with_stdio(false);
printf
执行格式化I/O通常(但并非总是)比玩弄流操作符更简洁和清晰。 - Oliver CharlesworthBoost.Format
。此外,更清晰的术语是什么?事实上,sprintf
的规范使得使用它编写合理的代码几乎不可能(输出长度未知),这并不是很友好(即使可以使用它,语法更短,但它会崩溃)。现在,这才是真正的麻烦。 - Bartek Banachewiczcin
。 - Alex Shesterovtail
这样的工具,它肯定很重要,但对于商业应用程序而言,通常并不重要。 - Alex Shesterov