필자에게 익숙하지 않은 함수 선언을 가진 대부분의 C 프로그램에서 나는 혼란 스러웠습니다.함수 이름 앞에 별표 (asterisk)의 기능은 무엇입니까?
void *func_name(void *param){
...
}
*
은 무엇을 의미합니까? 변수 유형의 (*
)에 대한 나의 이해는 다른 변수에 대한 포인터를 작성하므로 후자 변수가 메모리에 저장된 주소를 추적 할 수 있다는 것입니다. 그러나이 함수의 경우, 별표가 의미하는 바는 무엇인지 모른다. *
.
코드를 작성한 사람에게'void * func_name' 또는'void * func_name'보다는 별표를 함수의 이름 옆에 넣는 것이 매우 흥미로운 질문입니다. 그들이 합리적인 논쟁을 불러 일으킬 수 있다면, 나는 감동받을 것입니다. – Lundin
합리적 인수 : "int * a"를 작성하는 데 익숙하기 때문에 함수에 대해 동일한 작업을 수행하는 것이 더 일관성이있는 것처럼 보입니다 – Guillaume
Guillaume이 작성한 함수 이외에 void를 반환하는 포인터가 있습니다. 'int * a'와 마찬가지로 a가 integer-pointer 형이 아닌 정수를 가리키고 있습니다. – dhein