Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++의 함수에서 배열 매개변수의 크기를 인쇄하는 방법은 무엇입니까?


sizeof()를 사용하여 데이터 유형의 크기를 얻을 수 있습니다. C++의 함수에서 배열 매개변수의 인쇄를 보여주는 프로그램은 다음과 같습니다.

예시

#include <iostream>
using namespace std;
int func(int a[]) {
   cout << "Size: " << sizeof(a);
   return 0;
}
int main() {
   int array[5];
   func(array);
   cout << "\nSize: " << sizeof(array);
   return 0;
}

출력

위 프로그램의 출력은 다음과 같습니다.

Size: 8
Size: 20

이제 위의 프로그램을 이해합시다.

함수 func()에서 main()의 배열이 포인터로 전달되고 a가 배열의 시작을 가리키기 때문에 a의 크기가 8로 표시됩니다. 따라서 sizeof(a)는 포인터의 크기인 8을 표시합니다. 이를 표시하는 코드 스니펫은 다음과 같습니다.

int func(int a[]) {
   cout << "Size: " << sizeof(a);
   return 0;
}

main() 함수에서 배열의 크기는 20으로 표시됩니다. 이는 int의 크기가 4이고 배열에 5개의 int 요소가 포함되어 있기 때문입니다. 이를 보여주는 코드 스니펫은 다음과 같습니다.

int main() {
   int array[5];
   func(array);
   cout << "\nSize: " << sizeof(array);
   return 0;
}