기본 콘텐츠로 건너뛰기

구조체

구조체란 여러가지 자료형을 묶어놓은 집합적인 자료형이다.

구조체의 정의

 1 struct 구조체명
 2 {
 3     int x;
 4     int y;
 5 }



구조체의 선언

 1 struct animal
 2 {
 3     ...
 4 } dog, cat;

 1 struct animal
 2 {
 3     ...
 4 }
 5 ...
 6 struct animal dog, cat;



구조체의 초기화

 1 struct animal
 2 {
 3     int color;
 4     ...
 5 } dog = {.., .., ..};



구조체의 멤버

구조체의 멤버를 사용하려면 .연산자를 사용한다.
 1 dog.color;


구조체를 멤버로 가지는 구조체

필요한만큼 .연산자를 사용하면 된다.
 1 record.topleft.x = 100;


배열을 멤버로 가지는 구조체

 1 record.x[1] = 100;



포인터를 멤버로 가지는 구조체





구조체의 배열

 1 struct animal dog[100];
 2 dog[1].color;


구조체의 포인터

-> : 구조체 포인터의 멤버 연산자
 1 struct part* p_part;
 2 struct part gizmo;
 3 p_part = &gizmo;
 4 p_part->number = 100;


자료형의 정의

 1 typedef struct
 2 {
 3     ...
 4 } animal;
 5 
 6 animal dog, cat;

댓글

이 블로그의 인기 게시물

연산자 우선 순위

() (괄호) [] (배열) -> (포인터멤버) . (구조체멤버) ! (부정) ~ (1의보수) ++ (증가) -- (감소) - (부호)  + (부호)  (자료형) (형변환)  * (포인터)  & (주소)  sizeof * (곱셈) / (나눗셈) % (나머지) + (덧셈) - (뺄셈) << >> (비트이동) < <= > >= (관계) == != (관계) & (비트논리곱) ^ (비트배타논리합) | ( 비트논리합 ) && (논리곱) || (논리합) ?: (조건) = (할당) += -= *= /= %= &= ^= |= <<= >>= (복합할당) , (쉼표)

float.h

float.h 파일은 부동소수값을 나타내는데 필요한 요소들의 최대, 최소값 등을 나타내는 매크로 상수들로 구성되어 있다. 부동 소수값은 부호(+, -)와 함께 다음과 같은 요소들로 구성된다. (매크로 상수의 이름으로 사용되는 부분은 대문자로 표시하였다.) MANTissa  *  RADIX EXPonent #include   <stdio.h> #include   <float.h> void   floatingPointInfo () {           printf ( "Radix: %d\n"   , FLT_RADIX);           printf ( "Precision of Mantissa: %d\n"   , FLT_MANT_DIG);           printf ( "Minimum Exponent: %d\n"   , FLT_MIN_EXP);           printf ( "Maximum Exponent: %d\n"   , FLT_MAX_EXP);           printf ( "Minimum Float: %e\n"   , FLT_MIN);           printf ( "Maximum Float: %e\n"   , FLT_MAX);           print...

주석문

주석(comment)은 프로그램의 기능이나 동작을 메모해두는 문장이다. 컴파일러는 주석의 내용을 무시한다. 여러 줄 주석 시작 기호(/*)와 끝 기호(*/)는 반드시 쌍으로 사용되어야하며, 중복해서 사용되어서는 안된다. 1 /* 2 주석 3 */ 한 줄 주석 원칙적으로, 한 줄 주석문은 C++언어에서 지원되는 형식이다. 1 // 주석