我讀這在維基百科爲什麼Segmentation在下面的代碼中出錯?
int main(void)
{
char *s = "hello world";
*s = 'H';
}
當被編譯包含該代碼的程序,所述字符串「Hello World」被放置在程序可執行文件的部分被標記爲只讀的;加載時,操作系統將其他字符串和常量數據放在只讀內存段中。執行時,變量s被設置爲指向字符串的位置,並嘗試通過變量將H字符寫入內存,從而導致分段錯誤**我不知道爲什麼該字符串被放置在只讀段中。有人可以解釋這一點。
可能重複的[C:指針和數組之間的差異](http://stackoverflow.com/questions/1335786/c-differences-between-pointer-and-array) –