Почему можно присвоить строку на указатель char *, но не на массив char []?

Кто-нибудь может объяснить, почему это работает с указателем:

char * str1;

str1 = "Hello1";

str1 = "new string";

// but not this
char str2 [] = "hello";
str2 = "four";

// or this
char str3 [];
str3 = "hello";
str3 = "hello";
61
задан Robert Harvey 24 July 2011 в 03:16
поделиться