c++ cout vs printf()

c++ cout vs printf()

本文关键字:printf vs cout c++      更新时间:2023-10-16

在通过几个不同的来源学习了c++之后,我发现关于cout/printf()的使用存在矛盾的建议。一个消息来源说,printf(),我引用:

…不提供类型安全,因此很容易无意中告诉它将整数当作字符来显示,反之亦然。Printf()也不支持类,因此不可能教它如何打印类数据;必须将每个类成员一个一个地提供给printf()。

所以,对我来说更重要的是使用printf()的可读性。另一方面,另一个消息来源提到,cout使用了重载操作符<<,使用了更多的指令来执行,因此在内存方面比大型程序更昂贵。尽管说这句话的人是一个系统程序员,在这个系统中,每一点性能都是至关重要的。但是如果我想从事游戏或应用程序开发。

  • printf()cout之间的性能差异会那么重要吗?

  • 一般来说,我选择在应用程序中使用什么真的很重要吗?

感谢您的任何输入。

您将针对您的特定用例度量您的特定实现上的差异,并为您自己确定。

我想说问题中的两种推理方式都有优点,但你不能对性能进行概括。

如果您想进入游戏或应用程序编程,printf/cout将不需要太多。在这些情况下,它的唯一用途是调试。

如果您确实需要大量使用printf/cout,则在写入大量数据时将有所不同,否则您不需要麻烦。