有时,当我运行代码时,用Ctrl+ 终止程序会生成一个核心转储文件\。文件名的格式为core.*。该程序不会突然终止,并且没有分段错误。我认为这是SIGQUIT不SIGABRT和SIGSEGV。如果我尝试Ctrl+ C或Ctrl+ Z,则不会生成。
Ctrl
\
core.*
SIGQUIT
SIGABRT
SIGSEGV
C
Z
谁能说出为什么仅在按Ctrl+ 时才生成\?如何避免生成此核心转储文件?核心转储文件有什么用?
当进程由于程序故障而被操作系统终止时,进程将转储核心。发生这种情况的最典型原因是因为程序访问了无效的指针值。鉴于您有一个零星的转储,很可能您使用的是未初始化的指针。
您可以张贴导致故障的代码吗?除了模棱两可的概括之外,很难在不实际看到代码的情况下猜测出什么问题了。
至于什么是核心转储,请查看以下Wikipedia文章: