当前位置: 首页 > 知识库问答 >
问题:

c++ - cin和cout为什么比printf以及scanf慢?

石正信
2024-04-23

cin和cout为什么比printf以及scanf慢?

我曾经搜索过,但是没有任何满意的答案
希望有大佬解答

共有1个答案

阴宏爽
2024-04-23

不用回答了,我已经搜索到了答案:
为保证cin和cout与scanf和printf混合使用,输入流会时刻与输入缓冲保持同步,导致调用缓存,消耗过大,上述语句可解开同步(转载自CSDN)

 类似资料:
  • 本文向大家介绍c++中cin/cout与scanf/printf的区别比较,包括了c++中cin/cout与scanf/printf的区别比较的使用技巧和注意事项,需要的朋友参考一下 cin 、cout    基本说明:   cin代表标准输入设备,使用提取运算符 ">>" 从设备键盘取得数据,送到输入流对象cin中,然后送到内存。   cin是输入流,cout是输出流,重载了">>"、"<<"运

  • 在C语言中,我们通常会使用 scanf 和 printf 来对数据进行输入输出操作。在 C++语言中,C语言的这一套输入输出库我们仍然能使用,但是 C++ 又增加了一套新的、更容易使用的输入输出库。 【例1】简单的输入输出代码示例: 运行结果如下(↙表示按下回车键): Please input an int number: 8↙ The int number is x= 8 Please inpu

  • 只是想知道是否有人能向我解释这种行为?是意料之中的吗?我需要使用std::fixed来强制打印双打吗?

  • 和之间的区别是什么

  • c 输出 在C中输出为0.000000 所以这里q是浮点类型的空指针,还是q是(void*)类型的空指针? 我觉得它是(void*)类型的。 因此格式(%f)和参数(void*)不匹配将调用未定义的行为,并导致此类错误类型输出 printf(“%p”,q); 包含此语句是因为%p是NULL的格式说明符,没有其他原因 C++ 输出 在C++中给出输出0 我认为它很好,因为它给出的第一个内存块的地址没

  • 我正在尝试获取3个布尔变量和1个int变量的输入。即使我给出了正确的输入,它的行为也不正确。 我正在使用作为 中的格式说明符,如@taufique在扫描中的格式说明符中建议,用于 C 中的布尔数据类型 以下是我的代码及其行为: 慰问: 对于其他一些输入: 但是,当使用临时整数变量来获取@ouah在扫描中相同的格式说明符中获取C中布尔数据类型的输入时,它工作正常。 那么,为什么scanf行为不当呢?