변수 vs 포인터 vs 값

위린이·2025년 8월 28일

📌 변수 vs 포인터 vs 값

1. 변수 (Variable)

  • 메모리에 직접 값을 저장하는 이름 있는 공간
int a = 10;

메모리 그림:

주소    값
1000    10   ← 변수 a
  • a → 값 10
  • &a → 주소 1000

2. 포인터 (Pointer)

  • 다른 변수의 주소를 저장하는 변수
int a = 10;
int* p = &a;

메모리 그림:

주소    값
1000    10    ← 변수 a
2000   1000   ← 포인터 p (a의 주소 저장)
  • p1000 (a의 주소)
  • *p10 (a의 값)

3. 값 (Value)

  • 실제 저장된 데이터 (숫자, 문자, 객체 등)
  • 변수는 값을 직접 저장하고, 포인터는 값이 있는 곳의 주소를 저장

📌 전체 관계 그림

int a = 10;
int* p = &a;
[ 변수 이름 ]     [ 메모리 주소 ]     [ 저장된 값 ]
------------------------------------------------
a                1000               10
p                2000               1000  → a의 주소
  • a : 값 10 저장
  • p : a의 주소(1000) 저장
  • *p : p가 가리키는 주소(1000)에 있는 값 → 10

👉 정리하면:

  • 변수: 값을 저장
  • 포인터: 주소를 저장
  • : 실제 데이터

0개의 댓글