지식아일랜드

코딩 기초 25편 _ C++ 코딩 배열이 차지하는 메모리의 크기, C++11에서의 배열 초기화 방법 본문

C++ 기초

코딩 기초 25편 _ C++ 코딩 배열이 차지하는 메모리의 크기, C++11에서의 배열 초기화 방법

모르는게 없는 지식인 2023. 6. 1. 10:00
반응형

안녕하세요?

지식아일랜드의 모르는 게 없는 지식인입니다.

오늘 설명해드릴 C++ 코딩은 배열이 차지하는 메모리의 크기C++11에서의 배열 초기화 방법입니다.

차근차근 따라해 보시길 바랍니다.

 

 

 

배열이 차지하는 메모리의 크기
#include <iostram>

int main() {
     int arr[] = {1, 2, 3, 4, 5};

     int size = sizeof(arr) / sizeof(arr[0]); // 배열의 크기 계산

     int memorySize = size * sizeof(arr[0]); // 배열이 차지하는 메모리 크기 계산

     std: :cout << "배열의 요소 개수: " << size << std: :endl;
     std: :cout << "배열이 차지하는 메모리 크기: " << memorySize << " 바이트" << std: :endl;

     return 0;
}

 

위 코드는 배열이 차지하는 메모리 크기를 계산하여 출력합니다.

예를 들어, arr 배열이 5개의 요소로 구성되어 있다고 가정하면, 위 코드는 다음과 같은 출력을 생성합니다:

 

배열의 요소 개수: 5
배열이 차지하는 메모리 크기: 20 바이트

 

위 코드에서 주요한 부분은 다음과 같습니다:

 

1. sizeof(arr)은 배열 arr의 전체 크기를 바이트 단위로 반환합니다.

이 값은 배열의 요소 개수에 배열의 각 요소 크기를 곱한 값과 동일합니다.

 

2. sizeof(arr[0])은 배열 arr의 첫 번째 요소의 크기를 바이트 단위로 반환합니다.

모든 요소의 크기가 동일하다고 가정하므로 이 값을 사용하여 배열이 차지하는 메모리 크기를 계산합니다.

 

3. sizeof(arr) / sizeof(arr[0])을 통해 배열의 요소 개수를 계산합니다.

 

4. size * sizeof(arr[0])를 통해 배열이 차지하는 메모리 크기를 계산합니다. 이 값은 바이트 단위로 표시됩니다.

 

이를 통해 배열이 차지하는 메모리 크기를 알 수 있습니다.

 

 

C++11에서의 배열 초기화

C++11에서는 배열의 초기화와 관련하여 아래와 같은 내용들이 변경되었는데요.

 

· 배열을 초기화할 때 대입 연산자인 =을 사용하지 않아도 됩니다.

· 값을 명시하지 않고 괄호만 사용하여 초기화하면 모든 배열 요소를 0으로 초기화할 수 있습니다.

· 초기화 리스트를 사용하여 배열을 초기화하는 경우에는 narrowing cast를 할 수 없습니다.

· array 템플릿 클래스가 추가되었습니다.

 

 

 

어떠셨나요?

오늘은 C++ 코딩에서 배열이 차지하는 메모리 크기에 대해 설명드렸는데요.

아마 많이 어렵다고 느끼진 않으실 거에요.

그럼 저는 다음 포스팅에서 유익한 정보로 돌아오겠습니다.

감사합니다!

반응형
Comments