所以我编写了这个程序(源代码:http://pastebin.com/kb3QedMw),它基本上是一个状态机(用c实现),它读取日志文件,然后计算一些平均值。据我所知,它运行平稳,输出正确。但是,如果使用clang 3.3在Mac上编译,我会在程序的最后收到一条消息“Abort Trap 6”(在返回0之前或之后,据我所知)。在一台带有clang 3.4的linux机器上,一切似乎都很好。 这又是一些Mac怪异吗?我在这里读到(GNU Make "Abort trap: 6" after gcc call however call is valid when executed alone)它表示SIGABRT信号,但我无法想象应该从哪里来。 有什么想法是什么原因?我害怕我还没发现的一个可能会破坏我的结果的错误。