Structure(구조체)
서로 다른 형태의 변수들을 하나의 형태로 묶은 "자료구조"
c1, s1, i1
순으로 배치를 할 경우,
첫 4 Byte의 영역안에 c와 s가 모두 들어 갈 수 있으므로, 총 8 Byte를 사용하게 된다.
c1, i1, s1
순으로 배치를 할 경우, 각각 4 Byte, 총 12 Byte를 사용하는 것으로 보여지게 된다.
이는 ARM이나 기타 프로세서들의 Word Allignment
때문(4 Byte를 기준으로 Read)으로 메모리의 낭비가 일어난다.
이처럼 순서로 메모리의 최적화를 할 수 도 있으나,#pragma pack(1)
과 같이 Packing을 사용하여 빈칸이 없게 붙이는 것도 가능하다.
이는 총 7 Byte를 사용하게 된다.
이렇게 정의된 struct는 다른 자료형과 같이 사용이 가능하다.