data layout

배열 포인터 구조체 선택표

같은 자료의 연속 저장부터 주소 참조와 필드 묶음까지, C 데이터 표현을 기준별로 연결합니다.

자료 표현 흐름
01

같은 자료

배열은 같은 자료형을 연속 공간에 두고 인덱스로 접근합니다.

02

문자열

char 배열 끝의 null 문자로 실제 문자열 끝을 구분합니다.

03

주소

포인터는 변수나 배열 원소의 메모리 위치를 저장합니다.

04

묶음

구조체는 서로 다른 필드를 하나의 이름으로 관리합니다.

05

공유

union은 같은 공간을 여러 멤버가 번갈아 사용합니다.

핵심 구분

배열

0번부터 시작하며 원소 수와 자료형 크기가 전체 크기를 결정합니다.

문자열

strlen은 null 문자 전까지, sizeof는 배열 공간 전체를 기준으로 봅니다.

포인터

&는 주소를 얻고 *는 주소가 가리키는 값을 읽거나 바꿉니다.

구조체

변수는 점 연산자, 구조체 포인터는 화살표 연산자로 필드에 접근합니다.

자료구조

포인터와 구조체를 결합하면 리스트, 트리 같은 연결 구조를 만들 수 있습니다.

memory cue

자료형 문제가 나오면 먼저 연속 저장인지, 주소 참조인지, 여러 필드 묶음인지부터 표시하세요.