Инициализация указателя дает ошибку сегментации

Я написал программу на C следующим образом:

СЛУЧАЙ 1
int *a; /* pointer variable declaration */

int b; /* actual variable declaration */

*a=11;

a=&b;/* store address of b in pointer variable*/

Это дает ошибку сегментации при запуске программы.

Я изменил код следующим образом:

ДЕЛО 2
int *a; /* pointer variable declaration */

int b; /* actual variable declaration */

a=&b;/* store address of b in pointer variable*/

*a=11;

Теперь это'работает нормально.

Если кто-то знает, пожалуйста, объясните, почему он вызывает ошибку сегментации в СЛУЧАЕ 1.

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

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