C 2

[C언어] C언어 함수 포인터(Function Pointer) 정리

C언어의 고급 기능 중 하나인 함수 포인터(Function Pointer)는, 함수를 포인터로 가리켜서 함수를 동적으로 선택하거나 전달할 수 있는 강력한 도구입니다.처음 접하면 굉장히 생소하고 복잡해 보이지만, 원리를 알고 나면 아주 유용하게 사용할 수 있습니다. 특히 콜백 함수, 함수 배열, 전략 패턴 구현 등에서 많이 사용됩니다. 📌 함수도 메모리에 저장된다?모든 함수도 메모리 어딘가에 저장됩니다. 따라서 함수의 주소를 변수에 저장할 수 있고, 이 변수를 통해 함수를 호출할 수 있습니다.int add(int a, int b) { return a + b;}위 함수는 add라는 이름을 가지고 있지만, 사실 add는 함수의 시작 주소를 의미합니다. 따라서 아래와 같은 표현도 가능합니다.int (*f..

C 2025.03.26

[C언어] 포인터(Pointer) - 정보처리기사 실기 준비

정보처리기사 실기 준비하면서 C언어의 개념을 간단하게 잡기 위해 공부하고 있는데요. 자료구조나 연산자 등은 자바와 비슷한 맥락이기 때문에 저는 바로 포인터 개념부터 시작했습니다.C언어를 배우다 보면 가장 많이 헷갈리는 개념 중 하나가 바로 포인터(pointer)입니다. 하지만 포인터는 C언어의 핵심이자 강력한 기능이기 때문에 반드시 이해하고 넘어가야 합니다. 이 글에서는 포인터의 개념부터 활용까지 쉽게 설명해드릴게요. 📌 포인터란?포인터는 변수의 메모리 주소를 저장하는 변수입니다. 일반적인 변수는 값을 저장하지만, 포인터는 "어디에 저장되어 있는가"를 기억합니다.int a = 10; // 일반 변수int *p = &a; // 포인터 변수, a의 주소를 저장 *p는 p가 가리키는 ..

C 2025.03.25