[c언어] 함수 포인터를 선언하는 방법

함수 포인터 선언하기

함수 포인터의 선언은 다음과 같은 형식을 가집니다:

반환_자료형 (*포인터_이름)(매개변수_자료형);

예를 들어, 정수형 매개변수를 가지고 있는 함수 포인터를 선언하려면 다음과 같이 작성할 수 있습니다:

int (*funcPtr)(int);

위의 예제에서 int는 반환 자료형이고, (int)는 인자로 받는 자료형입니다.

함수 포인터 사용하기

선언된 함수 포인터를 사용하려면 함수의 주소를 할당해야 합니다. 이를 통해 포인터가 해당 함수를 가리키게 됩니다. 예를 들어:

int add(int a, int b) {
    return a + b;
}

int main() {
    int (*funcPtr)(int);
    funcPtr = &add;

    int result = funcPtr(3, 4);  // result는 7이 됩니다.
    return 0;
}

위 예제에서는 add 함수의 주소를 함수 포인터 funcPtr에 할당한 후, 이를 사용하여 함수를 호출했습니다.

함수 포인터를 선언하고 사용하는 방법에 대해 간단히 살펴보았습니다. 함수 포인터를 효과적으로 활용하면 런타임에 다양한 함수를 호출할 수 있는 강력한 기능을 활용할 수 있습니다.