[질문] C에서 Keyword
놓아주세요
2023.04.01
DLL 파일에
extern C __declspec(dllexport) double Square(double input)
{
// 구현코드
}
함수가 존재하고
dll을 사용하는 다른 프로그램에서 아래와 같이 선언합니다.
typedef double (SqaureInDLL)(double);
위의 코드가 같는 의미를 자세히 알고 싶습니다.
-
우미
typedef double (SqaureInDLL)(double); 는 typedef가 자료형을 지정하는 키워드라는것은 아실것 같구요. SqaureInDll은 인자값으로 double로 받고, 리턴값이 double인 함수포인터를 의미합니다. 쉽게 말해서, 함수포인터에 대한 자료형을 만든거라고 볼수 있죠. 그리고, 이처럼 dll에서 정의해서 사용하는것은 dll에서 자신을 호출한 프로그램쪽의 함수를 호출하기 위해서 사용합니다. 일반적으로 dll을 포함하는 프