17.7 ``Segmentation violation", ``Bus error" 和  ``General protection fault"  意味着什么?

通常, 这意味着你的程序试图访问不该访问的内存地址, 一般是由于堆栈出错或是 不正确的使用指针。 可能的原因有: 局部数组溢出 (用堆栈分配的自动变量); 不小心, 用了空指针 (参见问题 5.2 和 5.15)、 未初始化指针、地址未对齐的指针或其它没有适当分配的 指针 (参见问题 7.1 和 7.2); malloc 内部被破坏 (参见问题 7.16); 函数调用参数不匹配, 特别是如果用了指针, 两个可能出错的函数是  scanf() (参见问题 12.11) 和 fprintf() (确定他的第 一个参数是 FILE *)。

参见问题 16.3 和 16.4

翻译朱群英、孙云, LaTeX2HTML 编译 朱群英 (2005-06-23)