prev up next   top/contents search

comp.lang.c FAQ 列表· 第 16.8 题

Q“段错误”、“总线错误”和“通用保护错误”是什么意思?什么是“core dump”?


A这些症状(以及任何类似的内存访问违规或保护错误消息)通常意味着您的程序试图访问它不应该访问的内存,这几乎总是由于堆栈损坏或指针使用不当造成的。可能的原因包括:

在 Unix 系统下,任何这些问题几乎都必然会导致“core dump”:一个名为core的文件,[脚注] 在当前目录中创建,其中包含崩溃进程的内存映像,用于调试。

“总线错误”和“段错误”之间的区别可能有意义,也可能没有意义;不同版本的 Unix 在不同的情况下会生成这些信号。粗略地说,段错误表示试图访问不存在的内存,而总线错误表示试图以非法方式访问内存(可能是由于未对齐的指针;请参阅问题 16.7)。

另请参阅问题 16.316.4


prev up next   contents search
关于此 FAQ 列表   关于 Eskimo   搜索   反馈   版权

Eskimo North 托管