c++ - 将整数写入流
问题描述
我创建了一个库,其中包含类似于以下代码的部分
int a;
a = 5;
std::ofstream outFile("File.txt");
outFile << "Values : " << std::endl;
outFile << a << std::endl;
现在,这个库被两个不同的进程使用,它们输出File.txt
两个不同的输出
输出 1:
Values :
输出 2:
Values :
5
我找到了一些资源,其中提到了通过使用std::to_string
(将整数转换为 c++ 中的字符串)转换为字符串来将整数传递给流。但我想知道是什么让这两个进程在同一场景中表现不同。感觉好像其中一个过程对全局状态的流进行了一些更改
解决方案
尝试在不同的目录中运行两个不同的进程。从您所展示的内容来看,他们很可能都在尝试访问同一个文件。这不是你能做的。查看这篇文章,其中讨论了为什么尝试使用线程同时打开同一个文件两次不起作用。
推荐阅读
- android - 如何限制网络带宽直接adb?
- shell - 来自 java 方法结果的 HBase shell 查询行键
- opencl - 我可以使用 cl_context 来比较 OpenCL 上下文吗?
- groovy - groovy 列出具有作业中使用的 GIT URL 的 Jenkins 作业
- java - 无法从 oracle 报告中执行 Java 函数/过程
- string - 使用批处理从文本文件中更改行内的字符串
- c# - 为什么是双舍入而十进制不是?
- javascript - 为多个元素添加事件监听器并检测哪个元素触发了事件 - jQuery
- rest - 如何授予 TFS 构建代理对 TFS REST API 的访问权限?
- javascript - 从元素方法中获取元素的选择器