더북(TheBook)

정리하면, 철수라는 이름으로 변수를 선언하고 초기화하면 메모리에서 00000080D0BEFA24라는 위치에 철수라는 이름으로 공간을 할당하고 그 안에 1이라는 값을 넣습니다.

그림 7-3 변수와 메모리의 관계

같은 방법으로 변수 영희민수의 주소도 출력해 봅시다.

7.2.1 변수와메모리.c

int main(void) {
    int 철수 = 1;
    int 영희 = 2;
    int 민수 = 3;
    // 변수의 주소 출력
    printf("철수네 주소 : %p, 암호 : %d\n", &철수, 철수); 
    printf("영희네 주소 : %p, 암호 : %d\n", &영희, 영희);
    printf("민수네 주소 : %p, 암호 : %d\n", &민수, 민수);
    return 0;
}

실행결과 icon_con

철수네 주소 : 00000080D0BEFA24, 암호 : 1
영희네 주소 : 00000080D0BEFA44, 암호 : 2
민수네 주소 : 00000080D0BEFA64, 암호 : 3

세 변수 모두 각각의 주소가 출력됩니다. 이때 값의 끝자리를 보면 24, 44, 64와 같이 일정한 간격으로 연속된 주소가 할당됐습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.