Объявление и инициализация массива Char в C

Мне было любопытно, почему это не разрешено в C:

char myarray[4];

myarray = "abc";

И это разрешено:

char myarray[4] = "abc";

Я знаю, что в первом случай, я должен использовать strcpy :

char myarray[4];

strcpy(myarray, "abc");

Но почему объявление и последующая инициализация не разрешены, а объявление и одновременная инициализация разрешены? Связано ли это с отображением памяти программ на языке C?

Спасибо!

21
задан Frédéric Hamidi 12 February 2011 в 16:56
поделиться