Structure   구조체, 구조물, 구조체 데이터, C 언어 구조체

(2018-12-25)

구조체

1. 구조, 구조물, 구조체 이란?

  ㅇ [일반]  구조 (Structure)                           ☞ 구조 아키텍쳐 조직 매커니즘 참조
     - 자연에 나타난 구성 형태 (내재적 관점)
        . 모양/형태를 잡아주는 특징적 뼈대
     - 例) 대수적 구조

  ㅇ [정역학]  구조물
     - 하중을 지지,전달,견디어 내도록 하는 부재들의 조립체
        . 例) 건축물의 골조, 철교 등

  ㅇ [프로그래밍 언어]  구조체 (일명, 레코드)
     - 하나 이상의 다른 데이터형을 가진 변수들의 집합
2. [ C 언어 ]  C 구조체 특징

  ㅇ 구조체의 강점
     - 단지 변수,배열 만으로는 표현하기에 어렵지만,
     - 구조체는 그 이상으로 데이터 표현 능력을 향상시킴

  ㅇ 구조체의 명명
     - 변수명의 작성규칙에 따라 작성

  ㅇ 구조체의 데이터형
     - 비록, 개별 변수는 아니지만, 일종의 데이터형으로의 역할도 가능 
     - 따라서, 구조체를 사용하여 새로운 데이터형도 만들 수 있음

  ㅇ 구조체의 구성 요소 (이를, 멤버 또는 필드 라고도 함)
     - 구조체 멤버의 예는, 변수, 배열, 포인터 또는 다른 구조체 일 수가 있음
     - 한편, C++에서는 함수도 멤버로써 가능

  ㅇ 구조체 멤버(구성 요소)로의 접근 : 도트(.) 연산자 사용
     - 例) 구조체명.요소명;

  ㅇ 구조체의 확장
     - 바로 객체지향언어C++에서의 클래스인 셈


3. [ C 언어 ]  C 구조체 선언 및 정의

  ㅇ 구조체 선언, 구조체 정의 비교
     - 구조체 선언 : 구조체 구성 정보(자료형)를 컴파일러에게 알려 줌
     - 구조체 정의 : 구조체 변수를 만들어 실제 기억 공간을 확보/할당하게 됨

  ㅇ 구조체 태그명 
     - 구조체 자료형으로써 선언됨을 알려주는 명칭

  ㅇ 구조체 선언 형식
     * struct `구조체 태그명` 바로뒤에, 구조체 멤버들이 중괄호 { }로 둘러싸여 열거 됨
     - 구조체 태그(structure tag)를 사용하는 선언 형식
         
struct 구조체태그명 {
   구조체 멤버 1;
   구조체 멤버 2;
   ...;                       
} ;
- 구조체 태그(structure tag)를 사용 않는 선언 형식
struct { 
   구조체 멤버 1;
   구조체 멤버 2;
   ...;       
} 구조체변수 1, 구조체변수 2 ;  // 여기서, 구조체 선언시 구조체 정의도 같이 하는 것임
ㅇ 구조체 변수 정의 형식 - struct 구조체태그명 구조체변수; // C 언어 . 이전에 구조체 태그명으로써 선언된 구조체에 대한 구성 정보를 토대로, . 구조체 변수를 정의 함 (실제 기억 공간 확보) . 여기서, `struct 구조체태그명`에 의해 새롭게 데이터형을 만드는 것임 - 구조체태그명 구조체변수; // C++ (struct 생략) 4. [ C 언어 ] 기타참고사항 ㅇ 구조체의 복사/복제 - 단지 구조체 변수들로 대입문(a = b = c;)에 쓰면 구조체 내 모든 요소들이 복제됨 ㅇ 구조체 데이터형의 명명 (이름 부여) - 例)
typedef struct {
    int num;
    char name[10];
} Student;
ㅇ 구조체 초기화 형식 - struct 구조체태그명 구조체변수명 = { 값1, 값2, 값3, ... }; ㅇ 구조체 배열 선언 - struct 구조체태그명 구조체배열변수명[크기]; . 구조체배열변수명 : 구조체태그명으로 선언된 구조체들을 원소로 갖는 배열명


[C 변수,상수,자료형] 1. C 상수 2. C 자료형 (변수) 3. C 형 변환 4. C 구조체 5. 기억 클래스 6. C 배열
  1.   기술공통
  2.   기초과학
  3.   진동/파동
  4.   방송/멀티미디어/정보이론
  5.   전기전자공학
  6.   통신/네트워킹
  7.   정보기술(IT)
        1. 정보기술
    1.   전산기초
    2.   컴퓨터구조
    3.   프로그래밍
          1. 프로그램,프로그래밍
      1.   프로그래밍 언어론
      2.   구조적 프로그래밍
      3.   객체지향 프로그래밍
      4.   자료표현코드
      5.   자료구조
      6.   알고리즘
      7.   시스템 소프트웨어
      8.   프로그래밍언어 종류
            1. 프로그래밍 언어
        1.   C
              1. C 언어
              2. C 기초 문법
              3. C 연산자
          1.   C 언어 컴파일
          2.   C 변수,상수,자료형
            1.   1. C 상수
                2. C 자료형 (변수)
                3. C 형 변환
                4. C 구조체
                5. 기억 클래스
                6. C 배열
          3.   C 함수
          4.   포인터
        2.   C++
        3.   자바(Java)
        4.   자바스크립트
        5.   PHP
        6.   파이썬
        7.   (기타 언어)
      9.   프로그래밍 기타일반
    4.   데이터베이스
    5.   소프트웨어 공학
    6.   운영체제
    7.   정보보호/보안
    8.   IT 기타기술
  8.   공업일반(기계,재료등)
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     요약목록     참고문헌