[c] 함수 포인터
함수 포인터의 선언
함수 포인터를 선언하는 방법은 다음과 같습니다.
반환타입 (*포인터이름)(매개변수타입1, 매개변수타입2, ...);
여기서 반환타입
은 함수가 반환하는 값의 타입을, 포인터이름
은 함수 포인터의 이름을, 매개변수타입1, 매개변수타입2, ...
은 함수의 매개변수 타입들을 나타냅니다.
예를 들어, int
를 반환하는 매개변수가 없는 함수를 가리키는 포인터는 다음과 같이 선언할 수 있습니다.
int (*ptr)();
함수 포인터의 사용
함수 포인터를 사용하여 함수를 호출하려면 함수명 대신 함수 포인터를 사용합니다.
int sayHello() {
printf("Hello, World!\n");
return 0;
}
int main() {
int (*ptr)();
ptr = sayHello; // 함수의 주소를 포인터에 할당
ptr(); // 함수 포인터를 사용하여 함수 호출
return 0;
}
함수 포인터의 활용
함수 포인터는 특히 콜백 함수를 구현하거나, 동적으로 함수를 선택할 때 유용합니다. 또한 함수 포인터 배열을 사용하여 다양한 함수 중에서 선택적으로 호출하는 것도 가능합니다.
함수 포인터는 C 프로그래밍에서 강력한 기능을 제공하며, 유연한 프로그램을 작성하는 데 도움이 됩니다.
이상으로 함수 포인터에 대한 간단한 설명을 마칩니다.
참고 문헌: