C함수와 배열

배열 기본

고정 길이 메모리 블록으로 데이터를 순서대로 저장하는 C 배열의 선언과 순회 패턴을 정리합니다.

마지막 수정 2026년 3월 19일

기본 패턴

c
int scores[4] = {90, 85, 100, 70};
scores[1] = 88;

설명

  • C 배열은 같은 타입의 값을 연속된 메모리 공간에 저장합니다.
  • 인덱스는 0부터 시작하고, 마지막 원소 인덱스는 길이 - 1입니다.
  • 배열 길이는 선언 시점에 고정되는 경우가 많으므로 크기를 함께 관리해야 합니다.
  • 같은 함수 안에서는 sizeof(array) / sizeof(array[0])로 원소 수를 계산할 수 있습니다.

짧은 예제

c
#include <stdio.h>

int main(void) {
    int scores[] = {90, 85, 100, 70};
    int length = (int)(sizeof(scores) / sizeof(scores[0]));
    int total = 0;

    for (int i = 0; i < length; i++) {
        total += scores[i];
    }

    printf("average = %.1f\n", (double)total / length);
    return 0;
}

빠른 정리

항목설명
type name[n]길이가 정해진 배열 선언
array[i]i번째 원소 접근
연속 메모리원소가 메모리에 붙어서 저장됨
sizeof배열 전체 바이트 수 계산 가능
인덱스 범위0부터 n - 1까지

주의할 점

C는 배열 경계 검사를 자동으로 하지 않습니다. 범위를 벗어난 접근은 정의되지 않은 동작으로 이어질 수 있습니다.