Mafa Dev
구조체 본문
구조체도 배열처럼 여러 개의 데이터를 그룹으로 묶어서 하나의 자료형으로 정의하고 사용하는 자료형입니다. 배열은 같은 자료형만을 그룹으로 묶을 수 있지만 , 구조체는 서로 다른 자료형을 그룹으로묶을 수 있으므로 복잡한 자료 형태를 정의하는 데 유용하게 사용합니다.
구조체 변수의 선언 방법
① |
② |
③ |
struct employee{ char name[10]; int year; int pay; }; struct employee Mafa; |
struct employee{ char name[10]; int year; int pay; } Mafa;
|
struct { char name[10]; int year; int pay; } Lee;
|
①은 구조체 선언 을 한 후에 변수를 선언하는 방법이고, ②는 구조체와 구조체 변수를 같이 선언한 것입니다. 사실 1번과 2번의 구조체 변수를 선언하는 방법은 동일 하다고 할 수 있습니다. ③은 구조체 변수 이름만 선언 했기 때문에 다른 구조체 변수로 이 구조체를 사용할 수는 없습니다.
데이터 항목의 참조
구조체 변수에 있는 각 데이터 항목을 참조하기 위해서는 구조체 연산자를 사용해야 합니다.
구조체 연산자 | 사용 의미 |
. (점 연산자) | 구조체 변수의 데이터 항목을 지정합니다. |
-> (화살표 연산자) |
구조체형 포인터에서 포인터가 가리키는 데이터 항목을 지정합니다. |
. (점 연산자)
점 연선자는 구조체 변수에 있는 데이터 항목을 개별적으로 지정할 때 사용합니다.
-> (화살표 연산자)
포인터는 모든 자료형에 대해 사용할 수 있으므로 구조체로 선언한 자료형에 대해서도 포인터를 사용할 수 있습니다. 구조체 포인터 변수에서 포인터가 가리키는 구조체 변수의 데이터 항목을 지정하기 위해서 화살표 연산자를 사용합니다.
'C언어 > 유용한 것' 카테고리의 다른 글
파일입출력 feof , fseek , fgetc (0) | 2013.10.22 |
---|---|
다차원 배열 (0) | 2013.03.06 |
#define 과 const 선언의 차이점 (0) | 2013.02.20 |
포인터 대상의 const 선언 (0) | 2013.01.23 |
서식문자의 종류와 그 의미 (0) | 2013.01.17 |