더북(TheBook)

여기서 EF의 타입은 모두 double[4]가 된다. 원소의 값은 모르지만 초기자의 구조는 컴파일 시간에 결정되기 때문에 FLA다.

▲ 그림 6-3 고정 길이 배열의 구조

이 방식을 제외한 나머지 배열 변수 선언은 모두 VLA가 된다.

TAKEAWAY 6.10 길이가 정수형 상수 표현식으로 지정되지 않은 배열은 VLA다.

sizeof 연산자를 이용하면 배열의 길이를 계산할 수 있다.2 sizeof는 오브젝트의 크기를 알려 주므로 배열 전체 크기를 개별 원소의 크기로 나누는 간단한 나눗셈 연산만으로 배열의 길이를 알아낼 수 있다.3

TAKEAWAY 6.11 배열 A의 길이는 (sizeof A) / (sizeof a[0])이다.

 

 


2 크기의 측정 단위에 대해서는 뒤에서 소개한다.

 

3 한 가지 주의할 점은 sizeof 연산자의 구문은 두 가지 형태가 있다는 것이다. sizeof를 오브젝트에 적용할 때는 소괄호를 생략해도 되지만, 타입에 적용할 때는 반드시 소괄호를 적어야 한다.

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