问题标签 [cout]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - cout 可以以某种方式改变变量吗?
所以我有一个看起来像这样的函数:
在某些时候,这个函数溢出并返回一个非常大的负值。为了尝试准确追踪发生这种情况的位置,我添加了一条 cout 语句,使函数看起来像这样:
它奏效了!当然,我通过使用 double 完全解决了这个问题。但是我很好奇为什么当我计算它时该功能可以正常工作。这是典型的,还是我在其他地方遗漏了一个错误?
(如果有帮助的话,存储在浮点数中的值只是一个整数值,并不是特别大的值。我只是将它放在浮点数中以避免强制转换。)
c++ - 正确重载 stringbuf 以替换 MATLAB mex 文件中的 cout
MathWorks 目前不允许您cout
在 MATLAB 桌面打开时使用 mex 文件,因为它们已重定向标准输出。他们当前的解决方法是提供一个函数mexPrintf,他们要求您使用它。在谷歌搜索了一下之后,我认为可以扩展std::stringbuf
课程来做我需要的事情。这是我到目前为止所拥有的。这是否足够强大,还是我需要重载其他方法或更好的方法来做到这一点?std::cout
(如果此代码未链接到 mex 可执行文件,则在一般 UNIX 环境中寻找可移植性以及正常使用的能力)
c++ - 将 cout 分配给变量名
在 ANSI C++ 中,如何将 cout 流分配给变量名?我想要做的是,如果用户指定了输出文件名,我将输出发送到那里,否则将其发送到屏幕。所以像:
我也尝试将其作为宏函数执行:
但这也给了我一个编译器错误。
我想我可以为每个输出使用一个 IF-THEN 块,但如果可以的话,我想避免这种情况。有任何想法吗?
c++ - C++ cout 十六进制值?
我想要做:
并让它在输出中显示 FF,我该怎么做?
c++ - c ++ cout自动大小写字符串?
是否可以做类似 cout << "my string"; 我的字符串大写了吗?据我所知,没有办法做到这一点?我需要把它包装在一个函数上
c++ - 如何使用 cout 以全精度打印双精度值?
在我之前的问题中,我正在打印一个在我没有预料到的情况下被四舍五入的double
使用。cout
如何使用全精度进行cout
打印?double
c++ - c ++输出和输入单个字符
我正在用 C++ 编写一个程序,它实现了一个双向链表,每个节点中都包含一个字符。我通过附加功能插入字符:
该功能实现如下:
但是,我认为存在一个问题,可能与 C++ 处理字符的方式有关。当我去打印我的列表时,不知何故我从来没有得到我已经附加到我的列表中的要打印的字符。这是我用来打印的:
我只是在打印时得到废话。它打印出我从未添加到列表中的字符——你知道,只是来自内存中某处的字符。这可能是什么原因造成的?
printf - cout 和 printf 的缓冲区和输出序列
我知道今天 cout 和 printf 有缓冲区,据说缓冲区有点像堆栈,从右到左获取 cout 和 printf 的输出,然后从上到下将它们输出(到控制台或文件)。像这样,
然后我在下面写一个代码,
VS2005下,输出为
在 g++( (GCC) 3.4.2 (mingw-special)) 下,输出为,
看起来缓冲区就像一个堆栈。但是,我今天阅读了C++ Primer Plus,据说 cout 从左到右工作,每次返回一个对象(cout),所以“这就是让您通过插入连接输出的功能”。但是从左到右的方式无法解释 cout< 输出 9 8 7 现在我对 cout 的缓冲区如何工作感到困惑,有人可以帮助我吗?
c++ - cout 的缓冲区是如何工作的?
我知道cout几天前有缓冲区,当我google它时,据说缓冲区有点像堆栈,从右到左获取cout和printf的输出,然后将它们输出(到控制台或文件) 从上到下。像这样,
然后我在下面写一个代码,
VS2005下,输出为
看来stack的方式是对的~ 不过昨天看了C++ Primer Plus,据说cout是从左到右的,每次都返回一个object(cout),所以“这就是让你拼接输出的特性通过使用插入”。但是从左到右的方式不能解释 cout<
然后Alnitak告诉我,“<< 运算符实际上是 ostream& operator<<(ostream& os, int),所以另一种写法是: operator<< ( operator<< ( operator<< ( cout, a ), b ), C )”,
如果最正确的论点首先被评估,它可以得到一些解释。
现在我对 cout 的缓冲区如何工作感到困惑,有人可以帮助我吗?
c++ - how do I print an unsigned char as hex in c++ using ostream?
I want to work with unsigned 8-bit variables in C++. Either unsigned char
or uint8_t
do the trick as far as the arithmetic is concerned (which is expected, since AFAIK uint8_t
is just an alias for unsigned char
, or so the debugger presents it.
The problem is that if I print out the variables using ostream in C++ it treats it as char. If I have:
then the output is:
instead of
I tried using uint8_t
, but as I mentioned before, that's typedef'ed to unsigned char
, so it does the same. How can I print my variables correctly?
Edit: I do this in many places throughout my code. Is there any way I can do this without casting to int
each time I want to print?