[c언어] 함수 포인터와 함수 포인터의 값
프로그래밍에서 함수 포인터는 함수의 메모리 주소를 저장하는 포인터 변수입니다.
함수 포인터 정의
함수 포인터를 정의하는 방법은 일반 변수를 정의하는 방법과 유사합니다. 함수 포인터의 구조는 다음과 같습니다.
int (*funcPtr)(int, int);
위의 예시에서 funcPtr은 정수를 반환하고 두 개의 정수를 매개변수로 갖는 함수를 가리킬 수 있는 함수 포인터입니다.
함수 포인터의 값 할당
함수 포인터에 함수의 주소를 할당할 때는 함수의 이름만으로 주소를 가져올 수 있습니다. 함수 포인터에 함수 주소를 할당하는 예시는 다음과 같습니다.
int add(int a, int b) {
return a + b;
}
int main() {
int (*funcPtr)(int, int);
funcPtr = &add; // 또는 funcPtr = add;
int result = funcPtr(3, 5); // result는 8이 됩니다.
return 0;
}
위의 예시에서 funcPtr은 add 함수를 가리키고 있으며, 이를 통해 add 함수를 호출하여 result는 8이 됩니다.
함수 포인터는 주로 콜백 함수 또는 다형성과 관련된 기술에서 사용됩니다. 함수 포인터를 이용하여 런타임에 다양한 함수를 가리키도록 할 수 있으므로 유연한 프로그래밍이 가능해집니다.
자세한 내용은 C 프로그래밍 언어 관련 문서를 참고하시기 바랍니다.