cout相关内容
我对以下程序中 scanf 的行为感到困惑.scanf 似乎输入一次,然后不再输入,直到打印出一个字符流. 下面是一个C程序 #includeint main(){int i, j=0;做{++j;scanf("%d", &i);printf("\n\n%d %d\n\n", i, j);}while((i!=8) && (j
..
我已经用 C++ 编码很长时间了.我一直想知道哪个执行速度更快 printf 或 cout ? 情况:我正在用 C++ 设计一个应用程序,我有一些限制,例如执行时间限制.我的应用程序在控制台上加载了打印命令.那么哪个更可取呢?printf 还是 cout? 解决方案 每个都有自己的开销.根据您打印的内容,两者都可能更快. 这里有两点想到- printf() 必须解析“格式
..
所以,我正在做一个 C++ 项目.我有一个 long double 类型的 var 并为其分配了一个类似“1.02"的值 然后,我尝试用cout打印出来,结果是:-0 我已经尝试使用 setprecision 并且我在谷歌搜索中发现了所有问题. 对此有什么解决方案? 示例代码: #include #include 使用命名空间标准;int main(int argc, c
..
我有一个“字典"std::map(或者std::any,如果你想要的话)可以嵌套.现在,我想显示地图.由于 boost::any 显然不能很好地与
..
以这个为例: #include 使用命名空间标准;int main(){cout
..
std::cout 不起作用?我有一个 c/c++ 代码,但是 std::cout 不打印任何内容,甚至不打印常量字符串(例如“hello"). 有什么方法可以检查 cout 是否能够/无法打开流?有一些成员函数,比如good()、bad(),...但我不知道哪个适合我. 解决方案 确保刷新流.这是必需的,因为输出流是缓冲的,除非您自己手动刷新缓冲区,否则您无法保证何时刷新缓冲区.
..
当我使用 printf() 打印字符指针时,它会根据 %u 或 %s 使用转换说明符决定是打印地址还是整个字符串. 但是当我想用 cout 做同样的事情时,cout 将如何决定应该在地址和整个字符串中打印什么?这是一个示例源: int main(){字符 ch='a';字符 *cptr=&ch;cout 这里,在我的 GNU 编译器中,cout 试图将 ch 作为字符串输出. 如何
..
我有以下代码: cvtColor (image, image, CV_BGRA2RGB);Vec3b底部RGB;bottomRGB=image.at(821,1232); 当我显示bottomRGB[0]时,显示的值大于255,这是什么原因? 解决方案 正如你所评论的,原因是你使用 cout 直接打印其内容.在这里,我将尝试向您解释为什么这行不通. cout 为什么 "cout"
..
我正在使用 Qt4 和 C++ 来制作一些计算机图形程序.我需要能够在运行时在我的控制台中打印一些变量,而不是调试,但是即使我添加了库,cout 似乎也不起作用.有没有办法做到这一点? 解决方案 如果打印到 stderr 足够好,您可以使用以下最初用于调试的流: #include//qInfo 仅适用于 qt5.5+.qInfo()
..
在执行一些测试后,我注意到 printf 比 cout 快得多.我知道它依赖于实现,但在我的 Linux 机器上 printf 快 8 倍.所以我的想法是混合两种打印方法:我想使用 cout 进行简单的打印,我计划使用 printf 来产生巨大的输出(通常在循环中).我认为只要在切换到其他方法之前不要忘记刷新就可以安全: cout (std::cout, "\n"), count, string
..
以下代码: myQueue.enqueue('a');myQueue.enqueue('b');cout
..
printf() 和 cout 在 C++ 中?> 解决方案 我很惊讶这个问题中的每个人都声称 std::cout 比 printf 好得多>,即使问题只是要求差异.现在,有一个区别 - std::cout 是 C++,而 printf 是 C(但是,您可以在 C++ 中使用它,就像 几乎 来自 C) 的任何其他内容.现在,我会在这里诚实;printf 和 std::cout 各有优势.
..
如何将 std::vector 的内容打印到屏幕上? 实现以下 operator 的解决方案也不错: templatestd::ostream &运算符 & x){//... 我可以在这里写什么?} 这是我目前所拥有的,没有单独的函数: #include #include #include #include #include #include #incl
..
在我的之前的问题中,我打印了一个double 使用 cout 在我没想到的时候被四舍五入了.如何使 cout 使用全精度打印 double? 解决方案 您可以直接在 std::cout 上设置精度并使用 std::fixed 格式说明符. double d = 3.14159265358979;cout.precision(17);cout
..
当我在 64 位机器上为 C++ 程序编写代码时,我注意到打印变量的地址(例如)只返回 12 个十六进制字符,而不是 16 个.这是一个示例代码: int a = 3 ;cout sizeof(&a)
..
这是我在该网站上的第一个问题,尽管我已经来这里供参考已有一段时间了.我知道 argv[0] 存储程序的名称,其余的命令行参数存储在剩余的 argv[k] 插槽中.我也明白 std::cout 将字符指针视为空终止字符串并将字符串打印出来.下面是我的程序. #include "stdafx.h"#include #include 使用命名空间标准;int _tmain(int a
..
我正在开发一个 C++ 程序来处理不同变量和函数的地址. 当我在基于 Linux 的操作系统上编译我的程序时,包括 main 在内的所有函数都获得了 1 的地址,而不是像其他变量一样的 8 位十六进制数,这在 Windows 中没有发生. 我写了一小段代码来解释这个问题 #include 使用命名空间标准;无效功能1();无效功能1(){}int main(){国际tmp;void
..
什么可以解释为什么 cout 在这段代码中没有显示任何内容?我知道它与行 v[0] = 1; 有关.但我不知道为什么,有人对此有解释吗? 编辑:我也知道改变 v[0] = 1;对于 v.push_back(1);就能解决问题. #include #include 使用命名空间标准;int main(){向量v;v[0] = 1;cout
..
据我所知,将 std::endl 流式传输到 std::cout 会刷新它.我认为这种行为对大多数应用程序都有意义. 我的问题是我有一些使用多个 std::endl 的输出,因此刷新了输出.这对我的程序的性能来说真的很糟糕,而且还会导致很多图形故障,因为我经常跳来跳去. 所以我的问题是我是否可以告诉 std::cout 等待下一次刷新,直到我明确调用 std::cout.flush()
..
我正在练习使用多个文件和头文件等.所以我有这个项目,它需要两个数字然后将它们相加.很简单. 这是我的文件: main.cpp #include #include "add.h"int main(){int x = readNumber();int y = readNumber();writeAnswer(x + y);返回(0);} io.cpp int readNumber
..