c++ - 如何解决 g++ 下的输出问题?
问题描述
在 Linux 中,我有一行有效:
printf ("Semaphore: %d\n", sem_id);
但是当我写:
std::cout << "Semaphore: " << sem_id;
它不起作用。为什么?
解决方案
请注意,第一行是 in C
,而第二行是C++
。
您可能需要一个行尾标记,例如您在第一个 ( std::endl ) 中使用的那个。
std::cout << "Semaphore: " << sem_id << std::endl;
默认情况下,输出是行缓冲的。但是,在每种情况下,它都应该在您的程序终止时出现。
推荐阅读
- apache-kafka - 是否可以安装 Kafka Connect 的 Confluents 开源版本以与非融合平台(普通开源 Kafka)一起使用?
- javascript - D3 可缩放旭日形不完全圆
- .net - 如何在类库中添加 AddDbContext(无 Startup.cs 文件)?
- python - 有没有一种方法可以将一个字母转换成它在 python 元组中的索引?
- firebase - 是否可以使用firebase进行分页(编号)?
- laravel - Laravel - production.ERROR:此集合实例上不存在属性 [is_approved]
- ios - Objective-C 轻量级泛型不会编译
- c# - 如何在 ac# 模型中反序列化此 xml
- installation - 使用相对路径设置 Inno Setup 符号工具
- node.js - 如何包装 ioredis 包以测量每种方法的响应时间?