Segmentation faults
主要的原因有
・内存访问违规行为
・无限or过深的递归处理
调查方法可以使用core dump
所谓core dump,是指在执行中的程序因错误而强制结束时,将当时程序使用的存储器空间的内容全部复制并保存在文件中的内容。用于调试工作。
例子
#include <stdio.h>
#include <string.h>
#define FNAME "/home/work/coredump/aaa/xxxxxxxxxxxxxxxxxxxxxxxx/data/zzzzzzzz/testfilexxxxx.txt"
#define FNAME_NEW "/home/work/coredump/aaa/xxxxxxxxxxxxxxxxxxxxxxxx/data/zzzzzzzz/testfilexxxxx_new.txt"
int main(void)
{
char cmd[128];
memset(cmd, 0, sizeof(cmd));
sprintf(cmd, "mv -f %s %s", FNAME_NEW