c언어에서의 구조체와 공용체
본 자료는 2페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
해당 자료는 2페이지 까지만 미리보기를 제공합니다.
2페이지 이후부터 다운로드 후 확인할 수 있습니다.

목차

c언어에서의 구조체와 공용체
1 구조체(structure)란?
2 구조체의 일반적인 형식
3 구조체 변수의 선언
4 구조체 변수의 초기화
5 구조체 배열 변수의 선언
6 구조체 포인터 변수의 선언
7 구조체와 함수
8 공용체(union)
9 새로운 데이터 형 정의(typedef)

본문내용

-> kumaek);
}
7 구조체와 함수
구조체와 관련해서 함수의 인수로 넘길 수 있는 것은 구조체의 멤버, 구조체 멤버의 주소, 구조체, 구조체의 주소 등이 있다.
함수의 번환 값으로 구조체를 받을 수 있다.
[ 예제 9-3.c]
#include
main()
{
int a = - 123;
long b = 1234567;
float c = 1234.5678;
char d = 'A';
char *s = "String";
printf("10진 정수 = %d, 8진수 = %o, 16진수 =
printf("부호없는 정수 =
printf("배정도형 10진 정수 =
printf("한개의 문자 =
printf("문자열 =
printf("부동 소수점을 지수형으로 =
printf("부동 소수점을 소수형으로 =
}
8 공용체(union)
공용체는 하나의 기억 장소르 하나 이상의 데이터 형(type)이 공유하는 변수를 선언할 때 사용한다
기억 장소의 할당은 공용체 내의 가장 큰 멤버에 맞게 할당한다.
공용체의 형식
UNION 공용체면 {
멤버1의 선언;
멤버2의 선언;
.
.
멤버n의 선언;
};
[ 예제 9-4.c]
# include
union ab {
char a;
int b;
long c;
};
main()
{
union ab u;
u.c = (iong)0x12345678;
printf("u.c =
printf("u.b =
printf("u.a =
}
[ 예제 9-5.c]
# include
struct sb {
char a1;
int b1;
float c1;
};
union ub {
char a2;
int b2;
float c2;
}
main()
{
int scount, ucount ;
scount = sizeof(struct sb);
ucount = sizeof(union);
printf("struct sizeof =
printf("union sizeof =
}
9 새로운 데이터 형 정의(typedef)
이미 정의된 데이터 형(data type)을 새 이름으로 선언할 때 사용한다.
구조체 변수와 같이 긴 이름의 변수를 새로운 변수의 이름으로 선언할 때 편리하다.
typedef를 이용해서 선언된 데이터 형은 일반적인 데이터 형(char, int, float)
일반적인 데이터 형을 typedef를 사용해서 저의 하는 경우
예) typedef int integer --> integer는 int와 동일
typedef char character --> character는 char과 동일
typedef char * string --> string는 char * 와 동일
구조체를 typedef를 사용해서 정의하는 경우
예) typedef struct kagae {
char * i1ja;
char * jukyo;
short gb;
long kumaek;
} DATA;
[ 예제 9-6.c]
# include
typedef struct kagae{
char * i 1ja;
char * jukyo;
short gb;
long kumaek;
} DATA;
main()
{
DATA kg[2] = {{"96-10-01", "급여", 1, 900000},
{"96-10-02", "외식비", 70000}};
struct_print_test(kg[0]);
struct_print_test(kg[1]);
}
struct_print_test(s_kg)
DATA s_kg;
{
printf("%s
if (s_kg.gb == 1)
printf(" 입금 ");
else
printf(" 출금 ");
printf("
}
  • 가격3,000
  • 페이지수8페이지
  • 등록일2008.01.07
  • 저작시기2007.12
  • 파일형식한글(hwp)
  • 자료번호#446000
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니