将标准输出重定向到缓冲区,不使用>
Redirect the stdout to buffer,not using >
我编写了printf - myPrintf的实现,它打印到标准输出。我想验证一下它是否能正常工作。为了检查打印输出的正确性,我想将其与我期望得到的char进行比较。如何编写代码将标准输出重定向到缓冲区,而不使用>.
我只能使用printf!
您可以通过将rdbuf()
设置为您打开的文件来重定向couts
缓冲区。
奇怪,c++只打印,但不管怎样。
也可以在c中重定向标准输出。
这里有一种方法:https://rydow.wordpress.com/2007/10/26/c-code-to-redirect-stdout/
涉及dup
和dup2
。
也有这个选项(从C重新路由标准输入和标准输出)使用freopen
。
相关文章:
- 捕获标准输出以压缩并使用 CTRL-C 中断会给出损坏的 zip 文件
- 使用提升过程获取 shell 命令的标准输出
- 将标准输出重定向到ostream
- 如何在C++中执行命令并获取命令的返回代码标准输出和标准
- 在程序执行期间从标准输出重定向到自定义流
- 标准输出C++意外行为
- 防止 qDebug() 写入标准输出
- C++ - <<运算符重载,链表 - 地址而不是标准输出
- 有没有办法知道C++中将打印到标准输出的大小?
- 最后推迟标准输出
- 得到~对标准输出没有回应~在黑客排名问题上
- Win32 GUI C(++) 应用将标准输出和标准输出重定向到磁盘上的同一文件
- 在标准输出中执行打印会导致数组中随机分配值
- 捕获远程进程子进程的标准输出
- 使用 QProcess 读取标准输出
- 如何将值发送到标准输出流并在另一个程序中访问这些值
- 无法使用创建进程重定向标准输出
- HackerRank说~对标准输出没有回应~.C++
- 记录标准输入和标准输出
- 我可以重定向两个子进程的标准输出吗?