구조체(struct)와 공용체(union)

Slides:



Advertisements
Similar presentations
1.1 구조체란 1.2 중첩 구조체 1.3 구조체와 배열 1.4 구조체와 포인터 1.5 구조체와 함수 1.6 공용체와 열거형.
Advertisements

1 구조체 윤 홍 란 컴퓨터 프로그래밍 2 구조체 정의  구조체란 ? o 서로 다른 형의 변수들을 하나로 묶어주는 mechanism. (cf. 배열 : 같은 형의 변수들을 하나로 묶어주는 mechanism) o 예 : 카드의.
제2장 C 언어의 확장 C++(1).
ㅎㅎ 구조체 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스 구조체 배열.
ㅎㅎ 구조체 C++ 프로그래밍 기초 : 객체지향의 시작 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express Slide 1 (of 27)
쉽게 풀어쓴 C언어 Express 제16장 파일 입출력 C Express.
쉽게 풀어쓴 C언어 Express 제16장 파일 입출력 C Express.
C 프로그래밍 I.
-Part3- 제3장 콘솔 입출력과 파일 입출력.
C 프로그래밍 소개 숙명여대 창병모 2011 가을.
제 9 장 구조체와 공용체.
-Part2- 제3장 포인터란 무엇인가.
11장 구조체와 열거형 구조체의 정의 구조체 변수의 선언 구조체 초기화 및 사용 구조체 재정의 포인터를 이용해서 구조체 사용
데이터 파일 C 데이터 파일과 스트림(Stream) 텍스트 파일 처리
C언어: 배열 (Arrays).
6장. printf와 scanf 함수에 대한 고찰
조 병 규 Software Quality Lab. 한국교통대학교
쉽게 풀어쓴 C언어 Express 제16장 파일 입출력 C Express Slide 1 (of 23)
HW#1 Source 파일 제출 3.20(수)까지 제출 학번_이름_01.c
Part 14 파일 입출력 ©우균, 창병모 ©우균, 창병모.
제15장 파일 입출력 문자열을 출력하는 여러가지 방법 (15-2쪽) 문자열만 처리하는 입출력 함수
쉽게 풀어쓴 C언어 Express 제17장 동적메모리와 연결리스트 C Express Slide 1 (of 13)
C 프로그래밍.
Dynamic Memory and Linked List
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
21장. 문자와 문자열 처리 함수.
9장 파일 입출력.
8장 함수 함수의 필요성 라이브러리 함수와 사용자 정의 함수 함수의 정의, 원형, 호출 배열을 함수 인자로 전달 재귀호출.
처음으로 배우는 C 프로그래밍 제5부 추가적인 화제들 제 11 장 파일 처리.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
12장 파일처리와 매크로 파일 입출력 함수 문자 입출력 함수 라인 입출력 함수 불록 입출력 함수 매크로.
23장. 구조체와 사용자 정의 자료형 2.
파일 기술자 파일 기술자 현재 열려있는 파일을 구분하는 정수값 저수준 파일 입출력에서 열린 파일을 참조하는데 사용
Chapter 4. 보조자료 - 파일 입출력 파일의 기본 개념과 특징을 이해한다. 파일 처리 과정을 이해한다.
C언어 프로그래밍의 이해 Ch14. 파일 입출력.
11 표준 입출력과 파일 입출력 데이터를 읽고 쓰는 다양한 방법 익히기!.
프로그래밍 랩 – 7주 리스트.
파일 입출력 12.
TCP/IP Socket Programming…
14주차.
C 9장. 구조체 #include <stdio.h> int main(void) { int num;
11장. 1차원 배열.
10장 C 표준 파일 입출력 子曰 學而時習(실습?)之 不亦悅乎.
9장 파일 입출력.
17강 파일처리함수(1) 강 의 내 용 파일 입출력의 개념 파일포인터를 이용한 입출력 파일 입출력 과정
18강 파일처리함수(2) 강 의 내 용 순차파일 만들기와 읽기 순차파일 입출력함수 랜덤파일 처리
13. 포인터와 배열! 함께 이해하기 IT응용시스템공학과 김 형 진 교수.
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
11장. 1차원 배열 IT응용시스템공학과 김 형 진 교수.
24장. 파일 입출력.
19. 함수 포인터와 void 포인터.
구조체.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
게임프로그래밍 I - 1차원 배열 - 공주대학교 게임디자인학과 박 찬 교수 2011년 4월 25일.
구조체 (Structure).
C 프로그래밍 I.
컴퓨터 프로그래밍 기초 - 11th : 파일 입출력 및 구조체 -
실습과제 1번 생성된 파일 basic.txt를 프로젝트 폴더에서 메모장으로 열고 내용을 확인
Chapter 12 파일 입출력.
실습과제 (변수와 자료형, ) 1. 다음 작업 (가), (나), (다)를 수행하는 프로그램 작성
제 4 장 Record.
06. 디바이스의 등록과 해제 김진홍
C 13장. 입출력 라이브러리 #include <stdio.h> int main(void) { int num;
개정판 누구나 즐기는 C언어 콘서트 제13장 동적 메모리 출처: pixabay.
13. 포인터와 배열! 함께 이해하기.
개정판 누구나 즐기는 C언어 콘서트 제12장 파일 입출력 출처: pixabay.
11장. 1차원 배열.
⊙ 입출력 처리란? data를 입력장치로부터 program 내부로 읽어 들이거나
2019 2학기 9장 배열과 포인터 1. 주소, 주소연산자(&) 2. 포인터, 역참조연산자(*) 3. 배열과 포인터.
Presentation transcript:

구조체(struct)와 공용체(union)

구조체 - struct 두 개 이상의 원소들로 구성된 복합 자료형 서로 다른 데이터 형을 배열기법을 이용하여 하나로 묶은 것 사용자가 필요에 따라 임의로 만드는 데이터 형

구조체 - struct struct student { char name[20]; char addr[20]; char tel[20]; char gender; int age; } cs;

구조체 - struct struct student { char name[20]; char addr[20]; char tel[20]; char gender; int age; } cs1, cs2, cs3;

구조체 멤버의 접근 struct student { char name[20]; char addr[20]; char tel[20]; char gender; int age; } cs; cs.age = 20; strcpy(cs.name, ”홍길동”);

#include <stdio.h> #include <string.h> struct student{ char name[20]; char addr[20]; char tel[20]; char gender; int age; }; void main() { struct student cs; strcpy(cs.name, “정보통신인”); strcpy(cs.addr, “성대 1공학관”); strcpy(cs.tel, “031-290-7162”); cs.gender = ‘M’; cs.age = 20;

printf(“이름 : %s \n”, cs.name); printf(“주소 : %s \n”, cs.addr); printf(“전화 : %s \n”, cs.tel); printf(“성별 : %c \n”, cs.gender); printf(“나이 : %d \n”, cs.age); }

공용체 - union union struct student { char name[20]; char addr[20]; char tel[20]; char gender; int age; } cs; 모든 멤버 변수가 메모리를 공유함!!! 멤버 중 크기가 가장 큰 요소의 크기만큼 메모리를 할당 받음!!!

파일 입/출력 텍스트 파일 입출력 – 파일 열기 FILE *fopen( char *filename, char *mode ); FILE *fp; fp = fopen(filename, “r”); if ( fp == NULL ) { printf(“오류 : %s 파일을 열 수 없다 \n”, filename); return; }

여는 연산을 보여주는 프로그램 #include <stdio.h> void main() { FILE *fp; fp = fopen(“hello.txt”, ”r”); if( fp == NULL) { printf(“오류 : 파일 열기 실패 \n”); return; }

텍스트 파일 입출력 – 파일 닫기 FILE *fclose( FILE *fp);

#include <stdio. h> void main() { FILE. fp; fp = fopen(“hello #include <stdio.h> void main() { FILE *fp; fp = fopen(“hello.txt”, ”w”); if( fp == NULL) { printf(“오류 : 파일 열기 실패 \n”); return; } else printf(“파일 열기 성공 \n”); fclose(fp);

fgetc() , fputc() 파일이 정상적으로 열려야만 파일에 데이터를 쓸 수 있다. 텍스트 파일에 한 번에 한 문자씩 읽거나 쓰는 fgetc(), fputc() 함수를 살펴보자. int fgetc( FILE *fp ); int fputc( int ch, FILE *fp);

#include <stdio.h> char str[] = “I love your smile”; void main() { FILE *fp; char ch; int i; if ( (fp = fopen(“hello.txt”, “w”) == NULL) { printf(“오류 : 파일 열기 실패 \n”); return ; } for( i=0 ; str[i]; i++ ) { if ( fputc(str[i], fp) == EOF ) { printf(“오류 : 파일을 쓸 수 없다 \n”); return; fclose(fp); /* 파일 포인터 선언 */ /* str 을 파일에 쓴다 */

if( ( fp = fopen(“hello.txt”, “r” ) == NULL ) { printf(“오류 : 파일을 열 수 없다 \n”); return ; } for ( ; ; ) { ch = fgetc(fp); if ( ch == EOF ) break; putchar(ch); fclose(fp); /* 파일을 다시 연다 */ /* 파일에서 읽어 온 것을 출력한다 */