함수에서 배열 반환
C에서는 함수에서 배열을 반환해야 하는 경우가 많습니다. 아래 질문은 이 주제를 탐구합니다.
질문:
fillarr(int arr[]) 함수에 전달된 int arr[5] 배열을 생각해 보세요.:
int fillarr(int arr[]) { for(...); return arr; }
a) 배열을 어떻게 반환할 수 있나요?
b) 포인터를 반환하는 경우 어떻게 액세스합니까?
답변:
a) 배열 변수 arr은 메모리 블록의 시작 부분에 대한 포인터로 처리될 수 있습니다. 다음 구문:
int fillarr(int arr[])
은 다음과 동일합니다:
int fillarr(int* arr)
따라서 첫 번째 배열 요소에 대한 포인터를 반환할 수 있습니다:
int* fillarr(int arr[])
b) 반환된 포인터에 액세스하려면 호출 함수에서 일반 배열처럼 사용할 수 있습니다.
int y[10]; int *a = fillarr(y); cout << a[0] << endl;
위 내용은 C 함수에서 배열을 반환하고 액세스하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!