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

정수 함수 포인터의 배열에 대한 포인터를 반환하는 C/C++ 함수 선언

<시간/>

주어진 배열을 사용하여 정수 함수 포인터 배열에 대한 포인터를 반환하는 함수를 만드는 것이 작업입니다.

이를 위해 두 값을 입력하고 두 값을 모두 비교하는 함수와 더 큰 값의 메모리 주소를 반환하는 함수 포인터를 호출하고 결과로 인쇄합니다. 함수 포인터는 다른 시간에 다른 함수의 주소를 전달하는 데 사용되므로 함수를 보다 유연하고 추상적으로 만듭니다. 따라서 함수 포인터는 런타임 값을 기반으로 실행할 함수를 선택하는 간단한 방법을 제공하여 코드를 단순화하는 데 사용할 수 있습니다.

big() 함수 설명

프로그램은 전달된 두 정수 값을 비교하고 더 큰 값의 메모리 주소를 반환하는 함수 big( )을 참조하여 두 정수를 전달합니다. big( )의 반환 값은 0이 아닐 수도 있고 0 값일 수도 있는 정수 유형입니다.

예를 들어

입력 − 7 13

출력 − 더 큰 값은 13입니다.

입력 −8 6

출력 − 더 큰 값은 8입니다.

설명 − 두 개의 정수 값이 있고 비교 후 포인터는 둘 중 가장 큰 값의 메모리 주소를 반환합니다.

따를 수 있는 접근 방식

  • 정수 포인터를 사용하여 int *c라고 가정해 보겠습니다.
  • 그런 다음 두 개의 정수 변수를 초기화합니다.
  • 그런 다음 두 값을 입력합니다.
  • 주어진 두 값을 비교합니다.
  • 마침내 포인터 *c는 더 큰 값의 주소를 반환합니다.

알고리즘

Start
STEP 1-> Create the function and pass the argument.
   Int *big(int &, int &)
END
STEP 2-: call the main() function for entering and printing two values and initialize the pointer *c.
   int a, b, *c
   call c= big(a,b)
   print c
END
STEP 3-> compare the two Integer values passed to it and returns the memory address of the bigger value through pointer c.
   Comparing
   If(x>y)
      return(&x)
   else
      return(&y)
   END
STOP
비교

예시

#include<iostream.h>
Int *big(int&, int&);
Int main( ){
   Int a, b, *c;
   c= big(4, 7);
   cout<<”The bigger value is”<<*c<<”\n”;
   return 0;
}
Int *big(int&x, int&y){
   If(x>y)
      return(&x);
   else
      return(&y);
}

출력

위의 프로그램을 실행하면 다음과 같은 출력이 생성됩니다.

The bigger value is 7
The bigger value is 5