함수에서 배열 전달 및 반환
배열을 함수에 인수로 전달할 때 암시적으로 포인터로 처리될 수 있습니다. 배열의 메모리 블록의 시작 부분입니다. 이는 함수가 배열의 요소에 직접 액세스하고 조작할 수 있음을 의미합니다. 그러나 함수에서 배열을 반환하려면 다른 접근 방식이 필요합니다.
배열 반환
함수에서 배열을 반환하려면 실제로 반환을 수행해야 합니다. 배열의 첫 번째 요소에 대한 포인터입니다. 예는 다음과 같습니다.
int* fillArr(int arr[]) { // Do some operations on the array return arr; // Returns a pointer to the first element of arr }
반환된 배열 사용
배열에 대한 포인터를 반환한 후 일반 배열처럼 코드에서 사용할 수 있습니다. . 예:
int main() { int y[10]; int *a = fillArr(y); // Call the function and store the returned pointer cout << a[0] << endl; // Access the first element of the array through the pointer }
이 예에서 fillArr 함수는 a 포인터에 저장된 y 배열의 첫 번째 요소에 대한 포인터를 반환합니다. 그런 다음 이 포인터를 통해 배열의 요소에 액세스할 수 있습니다.
배열에서 포인터로의 암시적 변환
위의 예에서 다음을 사용했다는 점에 주목할 가치가 있습니다. 함수 인수에 대한 다음 구문은 다음과 같습니다.
int* fillArr(int arr[])
그러나 이는 기능적으로 동일합니다. to:
int* fillArr(int *arr)
그 이유는 배열 변수가 암시적으로 첫 번째 요소에 대한 포인터로 변환될 수 있기 때문입니다. 따라서 두 구문 중 하나를 사용하여 배열을 전달하고 반환할 수 있습니다.
위 내용은 함수에서 배열을 어떻게 전달하고 반환합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!