배열 초기화
배열의 초기화 프로그램은 중괄호 ({ }) 로 묶인 쉼표로 구분된 상수 표현식 목록입니다. 초기화 프로그램 앞에는 등호 (=) 가 옵니다. 배열의 모든 요소를 초기화할 필요는 없습니다. 배열이 부분적으로 초기화된 경우 초기화되지 않은 요소는 적절한 유형의 값 0을 수신합니다. 정적 스토리지 지속 기간이 있는 배열의 요소에도 동일하게 적용됩니다. ( static 키워드로 선언된 모든 파일 범위 변수 및 함수 범위 변수에는 정적 스토리지 지속 기간이 있습니다.)
배열에 대한 초기설정자를 지정하는 두 가지 방법이 있습니다.
- C89-style 초기자 (initializer) 를 사용하여 배열 요소를 아래첨자 순서로 초기화해야 합니다.
C89-style 초기자 (initializer) 를 사용하여 다음 정의는 완전히 초기화된 1차원 배열을 표시합니다.
static int number[3] = { 5, 7, 2 };number 배열에는 다음 값이 포함되어 있습니다. number[0] is 5, number[1] is 7, number[2] is 2. 요소 수를 정의하는 아래 첨자 선언자에 표현식이 있는 경우 (이 경우 3), 배열의 요소 수보다 많은 초기설정자를 가질 수 없습니다.다음 정의는 부분적으로 초기화된 1차원 배열을 표시합니다.
static int number1[3] = { 5, 7 };number1[0] 및 number1[1] 의 값은 이전 정의와 동일하지만 number1[2] 은 0입니다.요소 수를 정의하는 서브스크립트 선언자의 표현식 대신, 다음 1차원배열 정의는 지정된 각 초기설정자에 대해 하나의 요소를 정의합니다.
static int item[ ] = { 1, 2, 3, 4, 5 };크기가 지정되지 않았고 5개의 초기화 프로그램이 있으므로 컴파일러는 item 에 5개의 초기화된 요소를 제공합니다.