검색결과 리스트
글
<&연산자>
주소 연산자인 &연산자를 사용하면 메모리 공간의 주소를 표현할 수 있다.
<실습>
-결과-
결과값에 보면 주소가 4만큼씩 떨어져서 찍혔다. 왜 4만큼 떨어졌을까? 배열의 자료형을 보면 int형이기 때문에 4바이트씩 떨어진 것을 표현한것이다.
<배열의 이름은 시작주소>
배열 이름은 배열에 할당된 메모리 공간의 시작주소이다.
<실습>
-결과-
코드를 보면 arr은 배열의 시작주소이므로, 40fb00이라는 주소가 찍혔다. arr+1은 arr에서 +1만큼 다음 주소를 가리킨 것이다. 즉 4바이트 건너뛴 주소를 의미한다.
<*연산자>
*연산자는 메모리 공간에 저장된 값을 참조하는 연산자이다.
&연산자로는 주소를 알 수 있고, *연산자로는 그 주소에 들어있는 값을 알 수 있다.
<실습>
-결과-
이것을 활용하면 다음과 같은 공식?을 만들 수 있다.
*(array+i) == array[i] == *&array[i]
'Programming > C' 카테고리의 다른 글
C언어 - 포인터(Pointer) (0) | 2016.05.14 |
---|---|
C언어 - 2차원 배열, 주소체계 (0) | 2016.05.13 |
C언어 - 1차원 배열 (0) | 2016.05.11 |
C언어 - 지역변수, 전역변수, 정적변수, 레지스터 변수 (0) | 2016.05.10 |
C언어 - 함수란? (0) | 2016.05.09 |
RECENT COMMENT