存档

  • 关于SIGSEGV错误及处理方法(转)

    今天编程遇到了SIGSEGV错误,比较困惑,所以找了些资料,总结一下:
    (1)官方说法是:
    SIGSEGV — Segment Fault. The possible cases of your encountering this error are:
    1.buffer overflow — usually caused by a pointer reference out of range.
    2.stack overflow — please keep in mind that the default stack size is 8192K.
    3.illegal file access — file operations are forbidden on our judge system.
     
    (2)SIGBUS与SIGSEGV信号的一般区别如下:
    1) SIGBUS(Bus error)意味着指针所对应的地址是有效地址,但总线不能正常使用该指针。通常是未对齐的数据访问所致。
    2) SIGSEGV(Segment fault)意味着指针所对应的地址是无效地址,没有物理内存对应该地址。
     

    2009年1月21日 | 归档于 Linux教程
    标签:
文章标签 ‘SIGSEGV’