C에서 struct를 선언한 이후
struct형 변수를 만드려면
앞에 struct를 명시해야합니다.
e.g
struct node *head;
만약 이 과정이 싫으시다면
struct를 선언하실 때, typedef를 써주시면 됩니다.
e.g
typedef struct node{
...
}node;
node *head;
VS에서 저 코드가 오류없이 돌아가는 이유는
cpp로 컴파일을 하셨기 때문일겁니다.
C++에서는 굳이 struct를 typedef로 선언하지 않아도 위 예시처럼 변수 선언이 가능합니다.
소스파일의 확장자를 cpp에서 c로 변경하신 후 컴파일하시면 오류가 나올겁니다.
ghkd3778 6년 전
구조체 선언한 부분(10번줄)에서error: unknown type name ‘node’가 뜨는데 이유를 알 수 있을까요?
비주얼 스튜디오에서는 잘만 되는데..