[c] 배열과 다양한 자료형

배열은 프로그래밍에서 여러 개의 데이터를 하나의 변수에 저장하는 자료구조입니다. 배열은 동일한 자료형의 원소들을 저장하는 것이 일반적이지만, C 프로그래밍 언어를 비롯한 몇몇 언어에서는 서로 다른 자료형의 원소를 저장할 수도 있습니다.

배열이란?

배열은 동일한 자료형의 원소들을 한 곳에 모아놓은 자료구조로 볼 수 있습니다. 배열은 메모리 상에 연속적으로 할당되며, 각 원소는 인덱스를 통해 접근할 수 있습니다. C 언어에서 배열은 다음과 같이 정의될 수 있습니다.

int numbers[5]; // 5개의 정수를 저장할 배열

이와 같이 int 자료형의 5개의 원소를 저장할 배열 numbers를 선언했습니다.

서로 다른 자료형의 배열

C 언어에서는 서로 다른 자료형의 배열을 정의할 수 있습니다. 예를 들어, 정수형과 실수형 원소를 가지는 배열은 다음과 같이 정의할 수 있습니다.

// 정수형과 실수형으로 이루어진 배열
int ints[5];
float floats[3];

서로 다른 자료형의 배열을 다룰 때 주의할 점은 메모리 공간의 크기입니다. 다른 자료형은 메모리에 할당되는 크기가 다를 수 있기 때문에, 원소를 처리할 때 이 점을 고려해야 합니다.

다양한 자료형의 배열 다루기

서로 다른 자료형의 배열을 다루는 방법은 각 언어마다 조금씩 다를 수 있지만, 일반적으로 형 변환을 통해 서로 다른 자료형을 처리할 수 있습니다. C 언어에서는 형 변환 함수를 사용하여 서로 다른 자료형의 배열을 다룰 수 있습니다.

// 형 변환을 통한 서로 다른 자료형의 배열 다루기
int main() {
    float floats[3] = {1.2, 3.4, 5.6};
    int i;

    for (i = 0; i < 3; i++) {
        printf("%d\n", (int)floats[i]); // 실수형을 정수형으로 형 변환하여 출력
    }

    return 0;
}

위의 예제에서는 실수형 배열을 정수형으로 형 변환하여 출력하는 방법을 보여줍니다.

결론

배열은 일반적으로 동일한 자료형의 원소들을 저장하는 자료구조이지만, C 프로그래밍 언어를 비롯한 몇몇 언어에서는 서로 다른 자료형의 배열을 정의할 수 있습니다. 서로 다른 자료형의 배열을 다룰 때에는 메모리 공간의 크기와 형 변환에 유의하여 처리해야 합니다.