PHP总是和linux/unix、C/C++分不开的,郁闷。继续C/C++的学习吧。
今天起,要向学习PHP和MySQL一样,把遇见的问题都记录下来,以提醒自己。
“segmentation fault”是今天遇见的错误。查找资料,说是一些细节错误:
1。 针没有赋值;
2。 量赋值类型有错误。
3。 最主要的错误就是声明了指针,但是没有初始化 ,结果再后来的时候进行间接引用 ,就出现问题了。
同一个错误的提示总是有多个造成错误的情况的可能。printf输出时,类型有错误便会有这个问题。
比如:
以下是代码片段: char *val; val = (char *)malloc(valsize + 1); memset(val, 69, valsize); val[valsize] = '\0'; printf("After memset : %s \n", *val); |
这时便会提示“segmentation fault”了。原因呢,就是多写了一“*”。改成下面的即可。
以下是代码片段: printf("After memset : %s \n", val); |
参考的资料请看: 程序运行总是提示 segmentation fault (core dumped)是什么错啊?
一篇更好的文章: 可恶的"Segmentation faults"之初级总结篇
展开全文
收起全文