非内存溢出导致的Sengmentation fault问题解析

avatar
作者
筋斗云
阅读量:0

博主又遇到奇奇怪怪的问题了。。。。

我们都知道,一般内存越界、非法访问等因素会导致程序报Sengmentation fault

使用valgrid检查,发现没有内存问题,但是就是报。。

查到最后,发现是递归的问题,由于条件判断有问题导致递归一直进行,进而产生了该问题。

修复条件判断后,问题得到解决。。

感兴趣的可以试下如下代码来复现该问题:

#include <stdio.h>  static int i = 0; void test() { 	i++; 	printf("%d\n",i); 	for(int j = 0; j < 100000; j++); 	test(); } int main() { 	test(); 	return 1; }  

参考链接:

  • https://blog.csdn.net/weixin_44942303/article/details/125417273

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!