参考书籍:大学电子或计算机专业C程序设计教程。
编译环境:linux操作系统下的gnu-gcc
一个很好的segment error检查方法
例程文件 test.c
core_function (void)
{
unsigned char *ptr = 0x00;
*ptr = 0x00;
}
int main (void)
{
core_function ();
return 0;
}
1. gcc -g test.c
2. ulimit:如果想让系统在信号中断造成的错误时产生core文件, shell中设置:
1)设置core大小为无限
ulimit -c unlimited
2)设置文件大小为无限
ulimit unlimited
3.生成 core 文件
./a.out //此时段错误,生成一个名为 core 的文件
4.查看 core 文件
gdb ./a.out core