Programming/C

배열과 포인터의 차이점

­행복 2016. 5. 14. 17:21
모든 주소는 의미를 가진다.
배열의 이름은 연속적인 메모리의 시작 주소이다.
포인터변수로 배열의 요소에 접근 가능

1.
sizeof(포인터) = 4
sizeof(배열의 이름) = 배열의 크기

2. 포인터 변수는 상수(주소값)를 대입이가능하나, 배열의 이름에는 값 대입이 불가능(배열의 이름은 그 자체가 메모리 주소값인 상수이다.)

3. 아래의 문자열 선언 : 상수를 저장하는 메모리영역에 할당, 문자열의 시작주소값을 포인터변수 str이 저장
char *str = "ABC";
str[0]='D'; // 이렇게 못씀