c++ - gdb断言失败

标签 c++ gdb assert

我正在为我用 g++ 编写的一些代码编译一个测试用例,并尝试在命令行上用 gdb 调试它。代码编译时没有错误或警告,但是当我使用 gdb 启动我的可执行文件时,出现以下错误:

Assertion failed: (g.numPlayers>0 && g.numPlayers<=MAXPLAYERS && cin), function readScenario, file p3t3.cpp, line 141.

我在 gdb 中使用的输入参数与正常运行编译程序时完全相同。有什么理由可以毫无问题地编译,但在 gdb 中抛出错误吗?

最佳答案

如果您需要将命令行参数传递给您的程序,那么您要么需要使用

$ gdb --args ./program arg1 arg2

$ gdb ./program
...
(gdb) run arg1 arg2

关于c++ - gdb断言失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13169710/

相关文章:

c++ - 你怎么知道 main 是否已经退出?

c - GDB错误我不认识: "Program received signal EXC_BAD_ACCESS"

macos - 如何获取另一个进程的已加载符号列表

javascript - 使用 JavaScript 进行断言式编程

c++ - 无法在动态链接库 libstdc++-6.dll 中定位过程入口点 _gxx_personality_v0 错误

c++ - Qtabwidget Tab在运行时重命名

mysql - 我想调试mysql服务器

unit-testing - EXPECT_CALL 的反义词是什么?

c++ - 验证器断言失败

c++ - 检测黑白半色调屏幕的角度