struct 유형을 정의 할 때 아래의 Node (.. Node {..)를 사용하면 컴파일 시간 오류가 발생합니다.typedef struct 정의에 사용됨
typedef struct node Node;
Node{
int data;
Node *next;
};
나를 혼란시키는 매우 기본적인 개념이 있습니다. 관련 링크로 안내하거나 참조하십시오.
struct 유형을 정의 할 때 아래의 Node (.. Node {..)를 사용하면 컴파일 시간 오류가 발생합니다.typedef struct 정의에 사용됨
typedef struct node Node;
Node{
int data;
Node *next;
};
나를 혼란시키는 매우 기본적인 개념이 있습니다. 관련 링크로 안내하거나 참조하십시오.
Typedef는 다른 유형에 별칭을 제공하는 데 사용됩니다. 그것은 매크로가 아니며, 사용 장소에서 어떤 것으로 대체되지 않습니다.
올바른 정의 할 수 있습니다
최소한typedef struct node {
int data;
struct node* next;
} Node;
, 당신이 그것을 그러나
typedef struct node Node;
struct Node{
int data;
Node *next;
};
말할 필요, 당신은 는이 작업을 수행 할 수 있습니다
typedef struct {
int data;
struct Node *next;
}Node;
이제 struct Node
의 인스턴스를 쉽게 만들 수 있습니다. node
유형 struct Node
의 새로운 변수의 이름입니다
Node node, *pNode;
:에 의해 만들었습니다.
pNode = &node;
당신이 그것을 할 또는 것으로 기대 명확하게하기 위해 첫 번째 문장을 수정하시기 바랍니다 수 :
및
*pNode
에 의해 초기화 동일한에 대한 포인터를, 무엇입니까? – glglgl유효하지 않기 때문에 유효하지 않습니다. 구조체 타입의 정의는 키워드'struct'로 시작해야합니다. 그게 전부입니다. – AnT
그래, 맞다면. 감사! –