C 메모리 배치

C 큰 데이터 구조

배열과 문자열은 연속된 칸을 쓰고, 포인터는 그 칸의 주소를 저장합니다. 구조체는 서로 다른 자료형을 하나의 의미 있는 덩어리로 묶습니다.

배열같은 자료형 여러 개를 0번부터 접근
문자열`char` 배열 끝에 `\0`이 있어야 완성
포인터값 자체가 아니라 값이 있는 메모리 주소를 저장
Arrayint score[5]

정수 5칸을 연속으로 만들고 `score[0]`부터 접근합니다.

Stringchar name[20]

문자 여러 칸과 끝 표시 `\0`이 함께 있어야 문자열 함수가 멈춥니다.

Pointerint *p

주소를 저장하고 `*p`로 그 주소의 실제 값을 읽거나 바꿉니다.

Structstruct Student

학번, 이름, 점수처럼 서로 다른 값을 하나의 학생 데이터로 묶습니다.

score[0]

90

score[1]

80

score[2]

70

p

&score[0]

*p

90을 가리킴