생활
C언어 중 구조체 포인터가 불완전하다는 오류가 뜹니다.
#include <stdio.h>
struct item {
char name[20];
int price;
};//구조체 선언
int equal(struct item A, struct itme B);//함수 선언
int main() {
struct item a = { "노트북",20000 };//구조체 변수 선언
struct item b = { "스마트폰",10000 };//구조체 변수 선언
printf("* 구조체 포인터를 함수의 인수로 전달하는 프로그램\n");
if (equal(&a, &b) == 1)
printf("\"%s\"과 \"%s\"은 같은 품목입니다",a.name,b.name);
else if(equal(&a,&b)==0)
printf("\"%s\"과 \"%s\"은 다른 품목입니다", a.name, b.name);//if문을 통해 프린트
return 0;
}
int equal(struct item A, struct itme B)
{
if (strcmp(A->name,B->name) == 0)
return 1;
else
return 0;
}
밑줄 친 부분에서 "불완전한 클래스 형식에 대한 포인터는 사용할 수 없습니다."라고 뜨고 또한 "'name'의 왼쪽은 정의되지 않은 구조체/공용 구조체 'item'을(를) 지정합니다." 뜹니다. 정의를 한 것같은데 무슨 문제인지 잘 모르겠습니다
4개의 답변이 있어요!