[c언어] 함수 포인터와 함수 포인터의 배열 배열을 변경하는 방법
C 언어에서 함수 포인터 및 함수 포인터 배열을 변경하는 방법에 대해 알아보겠습니다.
함수 포인터
#include <stdio.h>
void printMessage(const char *message) {
printf("%s\n", message);
}
int main() {
void (*ptr)(const char *); // 함수 포인터 선언
ptr = &printMessage; // 함수 포인터에 함수 할당
(*ptr)("Hello, Function Pointer!"); // 함수 포인터 호출
return 0;
}
위의 예제에서는 함수 포인터를 선언하고, 함수를 가리키도록 설정한 후 호출하는 방법을 보여줍니다.
함수 포인터 배열
#include <stdio.h>
void printMessage1(const char *message) {
printf("Message 1: %s\n", message);
}
void printMessage2(const char *message) {
printf("Message 2: %s\n", message);
}
int main() {
void (*ptrArray[2])(const char *); // 함수 포인터 배열 선언
ptrArray[0] = &printMessage1; // 함수 포인터 배열에 함수 할당
ptrArray[1] = &printMessage2; // 함수 포인터 배열에 함수 할당
(*ptrArray[0])("Hello, Function Pointer Array!"); // 첫 번째 함수 호출
(*ptrArray[1])("Hello, Function Pointer Array!"); // 두 번째 함수 호출
return 0;
}
위의 예제는 함수 포인터 배열을 생성하고, 함수를 배열의 원소에 할당한 뒤 각 함수를 호출하는 방법을 보여줍니다.
변경 방법
함수 포인터나 함수 포인터 배열의 값(가리키는 함수)을 변경하려면 해당 값을 새로운 함수로 바꿔주면 됩니다. 함수 포인터에 새로운 함수를 할당하거나, 함수 포인터 배열의 각 요소를 변경해주면 됩니다.
함수 포인터 배열의 경우에는 각 요소에 새로운 함수를 할당하여 변경할 수 있습니다.
이상으로 C 언어에서 함수 포인터와 함수 포인터 배열을 변경하는 방법에 대해 알아보았습니다.