我有一个游戏'Rogue'的编译版本,以及它的源代码。有时,在看似随机的时间,游戏会提出一个非描述性的错误信息。
有没有办法在IDE中编译源代码,并在IDE中运行程序时获取程序失败的特定行号?
答案 0 :(得分:2)
如果您可以将错误消息编辑为:
printf (stderr, "Blah error at %s (%d)\n", __FILE__, __LINE__);
你可以得到确切的位置。
由于编辑所有邮件会很麻烦,我建议您定义一个宏来执行此操作:
#define MYERR(...) do { \
printf ("@ %s (%d): ", __FILE__, __LINE__); \
printf (__VA_ARGS__); \
} while (0)
替换所有错误消息调用以调用此宏(这比附加到每条消息容易得多)。