티스토리 뷰

생각을 해보고 stack overflow 에 질문하기.

가령,

    char szBuffer[12] = {"Hello"};

    char szData[12] = {"cheese"};

    char *pList = szBuffer;

라고 선언했을 때,


    szBuffer = szData; 


라고 하게되면 왼쪽 배열이름은 L-Value가 될 수 없으므로 오류가 난다.

하지만 왜?? 변수는 이름, 고유 주소, 담고있는 내용 이 세가지로 구성된다.

직관적으로 생각했을때, 저렇게 쓰면 담고있는 내용(여기선 그게 곧 szBuffer 의 고유주소가된다.) 을 szData로 바꾼다는 건데,, 


l-value가 될수 없다는건 배열의 이름이 담고있는 내용과 그 자신의 고유주소를 항상 일치시킨다는 말이다.


왤까?



'생각' 카테고리의 다른 글

박사를 해야할까?  (0) 2020.04.10
과학자의 고뇌  (0) 2019.06.30
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함