段错误是如何引起的

段错误是当进程尝试访问无效内存时,操作系统发送的信号(SIGSEGV)。这可能由访问不存在的地址、空指针解引用、用户进程访问内核空间、堆栈溢出或写入只读地址触发。堆栈溢出可能因递归过多或大数组定义导致。
摘要由CSDN通过智能技术生成

什么是段错误?

段错误是内核检测到进程访问非法内存地址时采用信号的形式杀死对应进程的行为。(对应的信号为SIGSEGV

如何引发段错误?

1.访问不存在的地址(不包括null与内核空间地址,就是指在虚拟地址所能包括的范围外)

2.对空指针解引用

3.用户进程访问内核空间地址

4.堆栈溢出(可能由于递归调用次数太多,或者定义数组太大引起)

5.写只读地址

参考:

(100条消息) 什么是段错误_西京刀客的博客-CSDN博客_段错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值