C언어 함수 포인터 입문

상황에 따라 실행 로직을 동적으로 교체해야 하는 요구사항을 처리하기 위해 함수 포인터를 도입했다.
함수의 시작 주소를 변수에 담아 호출하는 구조를 설계하고 다양한 연산 함수를 연결했다.

함수 포인터 변수가 add와 sub 함수의 메모리 주소를 번갈아 가리키는 동작 원리 다이어그램

정렬 알고리즘의 비교 로직을 함수 포인터로 분리하여 오름차순과 내림차순을 자유롭게 선택하도록 구현했다.
함수도 메모리상의 특정 주소를 가진 데이터라는 사실을 디버거를 통해 직접 확인했다.
콜백 메커니즘을 활용하여 모듈 간의 결합도를 낮추고 코드의 재사용성을 높였다.
복잡한 조건문 없이도 실행 흐름을 유연하게 제어하는 고수준의 설계 기법을 익혔다.
저수준 제어 능력이 고수준의 디자인 패턴과 결합되는 지점을 명확히 이해했다.
세련된 아키텍처를 구축하는 데 있어 함수 포인터가 얼마나 강력한 도구인지 체감했다.

Author avatar

웨이호프

WordPress creator and blogger.

View all posts