阅读量: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