c언어 스트림과 파일입출력

신범철·2021년 12월 8일
0

21-2c수업

목록 보기
7/8

스트림 개념

입력과 출력을 바이트들의 흐름으로 생각하는 것

스트림과 버퍼

스트림에는 기본적으로 버퍼가 포함되어 있다.

표준 입출력 스트림

stdin : 표준 입력 스트림 : 키보드
stdout : 표준 출력 스트림 : 모니터 화면
stderr : 표준 에러 스트림 : 모니터 화면

입출력 함수의 분류

getchar() : fgetc : 문자 입력 함수
putchar() : fputc : 문자 출력 함수
gets_s() : fgets : 문자열 입력 함수
puts() : fputs : 문자열 출력함수

printf() : fprintf : 형식화된 출력함수
scanf() : fscanf : 형식화된 입력함수

p6 중간
1. 스트림
2. 바이트
3. 장치의 독립성!!
4. stdin , 키보드
5. stdout , 모니터 화면

플래그

하나의 문자로서 다음과 같은 사항 지시
'-' : 출력 필드에서 출력값을 왼쪽 정렬함
'+' : 결과값을 출력할 때 항상 +와 -기호를 붙힘
'0' : 출력값앞에 공백대신 0이 들어옴
blank('') : 출력값이 양이거나 0인경우 부호대신 공백 출력
'#' : 8진수 출력값앞에는 0을 붙히고 16진수 출력시에는 0x를 붙힘


p 13 중간
1. 형식 지정자
2. 오른족
3. e, E
4. 6
5. 10.6
6. -
7. 6

문자와 문자열 입력

  • 문자를 읽는 경우, 형식 지정자 사이에 공백 문자가 있는 경우와 없는 경우는 결과가 달라짐
  • 있는 경우 공백문자를 이용해 문자들이 분히
  • 없는 경우 공백문자도 문자로 취급되어 입력됨

scanf() 사용시 주의점

  • 입력값을 저장할 변수의 주소를 전달
  • 배열의 이름은 배열을 가르키는 포인터
  • 충분한 공간 확보
  • scanf()의 형식 제어 문자열의 끝에 \n을 사용하는 것은 문자가 반드시 입력되어야한다는 것을 의미

23 중간
1. lf
2. 공백문자

파일이 필요한 이유

전원이 꺼지더라도 저장하기 위함

파일의 개념

  • c에서의 파일은 일련의 연속된 바이트
  • 모든 파일 데이터들은 결국은 바이트로 바꾸어서 저장
  • 이들 바이트들을 어떻게 해석하느냐는 전적으로 프로그래머의 책임

이진 파일

사람은 못읽지만 컴퓨터는 읽을수 있는 파일
이진 데이터가 직접 저장되어있음
라인 분리 x
문자열 변환x

파일 모드

r : 읽기 모드
w : 쓰기 모드(새로 쓰기)
a : 추가 모드
r+ : 읽기모드로 여나 쓰기모드로 전환가능
w+ : 쓰기모드로 여나 읽기모드로 전환가능
a+ : 추가 모드로 여나 읽기모드로 전환가능
t : 텍스트 파일 모드
b : 이진 파일 모드

파일 닫기와 삭제

38 중간
1. 바이트
2. 텍스트, 이진
3. fopen()
4. 파일구조체

fflush(fp) : 버퍼의 내용이 디스크 파일에 써진다.

profile
https://github.com/beombu

0개의 댓글