什么是C中的SIGSEGV运行时错误?

我需要知道分割错误的根本原因,任何人都可以告诉我如何处理它。
Wikipedia有其他一些来源的答案。

一个segfault基本上意味着你做了一些坏的指针。这可能是一个segfault:

char *c = NULL;
...
*c; // dereferencing a NULL pointer

或这个:

char *c = "Hello";
...
c[10] = 'z'; // out of bounds, or in this case, writing into read-only memory

或者也许这样:

char *c = new char[10];
...
delete [] c;
...
c[2] = 'z'; // accessing freed memory

在每种情况下,同样的基本原则 – 你正在做一些不是你的记忆。

翻译自:https://stackoverflow.com/questions/1564372/what-is-sigsegv-run-time-error-in-c

转载注明原文:什么是C中的SIGSEGV运行时错误?