一尘不染

为什么生成核心转储文件?

linux

有时,当我运行代码时,用Ctrl+
终止程序会生成一个核心转储文件\。文件名的格式为core.*。该程序不会突然终止,并且没有分段错误。我认为这是SIGQUITSIGABRTSIGSEGV。如果我尝试Ctrl+
CCtrl+ Z,则不会生成。

谁能说出为什么仅在按Ctrl+ 时才生成\?如何避免生成此核心转储文件?核心转储文件有什么用?


阅读 249

收藏
2020-06-03

共1个答案

一尘不染

当进程由于程序故障而被操作系统终止时,进程将转储核心。发生这种情况的最典型原因是因为程序访问了无效的指针值。鉴于您有一个零星的转储,很可能您使用的是未初始化的指针。

您可以张贴导致故障的代码吗?除了模棱两可的概括之外,很难在不实际看到代码的情况下猜测出什么问题了。

至于什么是核心转储,请查看以下Wi​​kipedia文章:

2020-06-03