C언어 공부

C언어 기초 - 9. 배열의 개념

Client Side 2025. 8. 15. 23:42

숫자를 2천개를 저장하기 위해서 변수를 일일이 만드는 게 아니라 4천바이트를 할당 받는 것.

 

int arr[2000];  // 4byte짜리 int를 4천개 할당 받는다. 총 8천 바이트. 2천개의 인덱스.

 

arr[0] <- [ ] 안에 인덱스 번호를 넣는다. 배열의 순서.

 

배열의 마지막 index는 전체 길이에서 -1한 값. 왜냐하면 인덱스는 0부터 시작.

 : arr[1999]

 

-  arr : 상수 포인터 변수     (상수 : 변하지 않는 수)

 

arr 값은 arr의 첫번째 인덱스 값을 기본으로 가져온다 ( = arr[0] )

 

#include <stdio.h>

int main() 
{
    int arr[2000];   //  배열 선언
    arr[0] = 256;   //  배열 값 할당
    printf("%p\n", arr);  //  arr의 주소 출력 (배열 미기재 시 기본적으로 인덱스0의 주소)
    printf("%p\n", &arr[0]);  //  arr[0]의 주소 출력
    printf("%d\n", arr[0]);  //  arr[0]의 값 출력
    printf("%d\n", arr);  //  이건 출력되지 않는다 arr은 주소를 의미한다.
    
    return 0;
}

 

 

배열 값 할당

#include <stdio.h>

int main() 
{
    int items[2000];
    for ( int i = 0; i<=2000; i++)
        {
        items[i]=i;
        }

    for( int j = 0; j<= 5; j++)
        {
        printf("%d\n",items[j]);            
        }
    printf("%d\n",items[2000]);
    return 0;
}