struct를 선언하는 두 가지 방법의 차이점은 무엇입니까?구조체 선언
첫 번째 방법 :
struct x {};
두 번째 방법 : 유형 만 struct x
struct _x {} x;
struct를 선언하는 두 가지 방법의 차이점은 무엇입니까?구조체 선언
첫 번째 방법 :
struct x {};
두 번째 방법 : 유형 만 struct x
struct _x {} x;
첫 번째 정의합니다. 두 번째 형식은 struct _x
을 정의하고은 x
이라는 형식의 변수를 정의합니다.
_x
과 같은 밑줄로 시작하는 이름은 파일 범위에 예약되어 있으므로 다른 범위 안에 있지 않으면 두 번째 파일에서 정의되지 않은 동작이 발생합니다.
두 번째 방법은 struct _x
및이라는 변수에 x
이라는 변수를 선언합니다. 첫 번째 유형은 struct x
유형 만 선언합니다.
번째 방법은 본질적
struct _x{}; // define a type
struct _x x; // allocate a variable of type struct _x
와 동일