에 대한 포인터를 역 참조 또한의 우리가 소스 파일에 두 개의 구조체가 있다고 가정 해 봅시다 불완전 형
typedef B* beta;
typedef A* alpha;
을,이 함수 프로토 타입이 정의되어 헤더 파일에서 :
printAplha(alpha);
compare(const beta, const beta);
주 파일에는 특정 헤더 파일과 코드가 포함되어 있습니다. 이케이 : 코드의 마지막 줄에서
alpha one, two;
printAlpha(one);
printAlpha(two);
//everything works fine up to here
compare(one->y, two->y);
내가
main.c:37:20: error: dereferencing pointer to incomplete type
main.c:37:33: error: dereferencing pointer to incomplete type
을 얻고 난으로 (인수가있는 타입 alpha
의 것, 내가 compare
에 대한 래퍼 기능을 사용할 수 있습니다 알고 compare 함수의 인수는 변경할 수 없습니다 (재귀 함수입니다). 그러나 다른 해결책이 있는지 알고 싶습니다. 왜 이런 일이 발생합니까?
참고 : 내부 구조의 암호화를 위해 구조체 정의가 소스 파일에 기록되었습니다.
왜 내 질문에 답이 나옵니까? 누군가 내가 뭘 잘못했는지 알 수있는 이유를 제공 할 수 있었습니까? – Chris