You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C++使用Boost图库通过istream读取*.in文件失败且出现编译告警求助

问题分析

  • 你看到的编译输出内容是警告,不是编译错误,代码已经成功编译生成了可执行文件input
  • 运行后没有效果不是文件读取失败,是你的程序默认从标准输入读数据,你运行./input时没有传入example.in的内容,程序处于等待输入的状态

解决方法

正确运行命令

使用shell的输入重定向把文件内容传入程序,运行如下命令即可:

./input < example.in

运行后会得到预期输出:

Arcs that leave 1 go to 2 3
Arcs that leave 2 go to 3
Arcs that leave 3 go to 1
Arcs that leave 4 go to 2 3 5
Arcs that leave 5 go to 1 5

消除编译警告(可选)

你看到的-Wmaybe-uninitialized警告是Boost 1.76版本在-O2优化等级下的已知假阳性警告,不影响程序正常运行。如果想要消除该警告,可以在编译参数中添加-Wno-maybe-uninitialized,或者升级到更高版本的Boost库。

内容的提问来源于stack exchange,提问作者Marcelo de Sousa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 10:42:04