가능한 중복은 :
What is the point of function pointers?C에서 함수에 대한 포인터의 유용성은 무엇입니까?
난 그냥 K + R에서 작동하는 포인터에 대해 읽어보십시오. 나는이 포인터들이 어떻게 작동 하는지를 이해하지만 그것들을위한 유틸리티를 보지 못했다. 프로그래밍에서 이러한 유형의 포인터를 사용하는 것은 무엇입니까?
가능한 중복은 :
What is the point of function pointers?C에서 함수에 대한 포인터의 유용성은 무엇입니까?
난 그냥 K + R에서 작동하는 포인터에 대해 읽어보십시오. 나는이 포인터들이 어떻게 작동 하는지를 이해하지만 그것들을위한 유틸리티를 보지 못했다. 프로그래밍에서 이러한 유형의 포인터를 사용하는 것은 무엇입니까?
팩토리 등록, 데이터 구조에 알고리즘 적용 (예 : 사용자 정의 정렬 기능을 사용하여 목록 정렬)과 같은 다양한 작업에 함수 포인터를 사용할 수 있습니다. 몇 가지 다른 용도가 있지만 본질적으로 제어 반전에 필요합니다. 다른 사람이 코드를 다시 호출하게하고 함수에 대한 포인터를 제공하여이를 수행합니다.
많은 용도가 있지만 C 배열이 다소 털이므로 배열을 조작 할 때 가장 유용합니다.
포인터를 사용하는 주된 이유 중 하나는 데이터를 전달할 때입니다. 포인터를 사용하면 같은 데이터의 무의미한 양의 복사본을 만들지 않을 것입니다.
예를 들어, 200 바이트 크기의 구조체를 함수에 전달하려고합니다. 더 비싼 : 구조의 4 (또는 8) 바이트 메모리 주소 또는 200 바이트의 전체 복사본을 전달?