Разница между массивом и указателем [дубликат]

На этот вопрос уже есть ответ здесь:

Почему запись в строковый литерал в этой программе на Си сегфо? 6 ответовКакие'не так с моей strcpy? [закрыто] 4 ответа

Вчера у меня были небольшие проблемы с домашним "зЬгср» функция. Это работает сейчас, хотя яЯ немного смущен!

char* a = "Hello, World!"; //Works
char b[] = "Hello, World!"; //Works also

strcpy(a, "Hello!"); //Segmentation fault
strcpy(b, "Haha!!"); //Works..

В чем разница? Почему указатель на символ вызывает "Ошибка сегментации "?

Почему это даже работает? :

char* a = "Haha"; //works
a = "LOL"; //works..

Ответы на вопрос(2)

Ваш ответ на вопрос