구조체 정의, 구조체 선언

(2023-12-09)

구조체 정의 및 선언, 구조체 태그, 구조체 별칭, 익명 구조체


1. [C 언어]  구조체 정의, 구조체 선언 비교구조체 정의 : 구조체 구성 정보를 자세하게 컴파일러에게 알려 줌
  ㅇ 구조체 선언 : 구조체 변수를 만들어 실제 기억 공간을 확보/할당하게 됨


2. [C 언어]  구조체정의하는 형식구조체 정의를 하는 형식 둘(2)
     * struct `구조체 태그명` 바로뒤에, 
        . 구조체 멤버들이 중괄호 { }로 둘러싸여 열거 됨

     - ①  구조체 태그명(structure tag)을 사용하는 정의 형식
          
struct 구조체태그명 {
   구조체 멤버 1;
   구조체 멤버 2;
   ...;                       
} ;
- ② 구조체 태그명(structure tag)을 사용 않는 정의 형식 (익명 구조체, Anonymous Struct)
struct { 
   구조체 멤버 1;
   구조체 멤버 2;
   ...;       
} 구조체변수 1, 구조체변수 2 ;
. 한편, 이 형식은, 구조체 선언,정의를 동시에 같이 하는 것임 3. [C 언어] 구조체 변수선언하는 형식 ㅇ (C 언어의 경우) struct 구조체태그명 구조체변수; - (실제 기억 공간 확보) . 이전에 정의된 구조체 형식을 갖는 구조체 태그명으로, 구조체 변수를 선언 함 - (추상자료형 생성) . 사실상, `struct 구조체태그명`에 의해 새롭게 데이터형을 만드는 것임 ㅇ (C++ 언어의 경우) 구조체태그명 구조체변수; // C++은, struct 키워드 생략 (간결함) 4. [C 언어] 구조체 태그명 (구조체 이름)구조체 자료형으로 선언됨을 알려주는 명칭 - 여러 구조체들을 서로 구별할 수 있게하는 식별자 역할 5. [C 언어] 구조체 별칭구조체 별칭으로 새로운 자료형을 만듬 ㅇ 구조체 별칭에 의한 정의 - typedef struct (구조체명칭 생략가능) { 자료형 멤버명; } 구조체별칭; . 여기서, typedef는, 기존의 자료형으로부터 유도된 새로운 자료형을 만들 때 사용되는 키워드 - 例)
typedef struct {
    int num;
    char name[10];
} Student;
구조체 별칭에 의한 선언 - 구조체별칭 구조체변수명;

구조체,공용체
   1. C 구조체   2. C 구조체 정의,선언   3. C 공용체  


Copyrightⓒ written by 차재복 (Cha Jae Bok)               기술용어해설 후원
"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"