char str[10]="abc";
이것은 초기화(Initialization)으로, 특별히 허용되는 형식이다. 반면
char str[10];
str="abc";
이런 경우 아래의 str는 포인터로 해석되어 부적절하다.
char str[10];
char str2[10]="abc";
str=str2;
이렇게 할당하거나, 아니면 글자 하나하나 루프를 돌리거나 하는 수 밖에 없다.
또한 int 형식의 경우에도
int a[10]={1}; 이것은 허용되지만
int a[10];
a={1};
이 형식은 불가능하다. {1, 0, ... , 0}을 해도 안 된다.
△
페이스북 댓글