티스토리 뷰
C언어 함수 fopen()의 모든 것!
우리는 지금까지 여러 가지 편집기(메모장, MS 워드, 한글, 훈민정음 등)으로 파일을 만들 수 있었습니다. 물론 다른 프로그램으로도 파일을 만들 수가 있죠.
이제는 C언어를 이용해서 파일을 만들어 보겠습니다. C언어에서 파일을 만들기 위해서는 함수 fopen()을 사용합니다.
함수 fopen()은 헤더 파일 stdio.h파일에 저장되어 있습니다. (fopen()을 사용하기 위해서는 stdio.h파일을 소스코드 내에 포함시켜야 한다는 것 잊지 마세요. 잊으면 오류나니까요)
fopen() 에 대해서 |
자세한 설명을 하도록 하겠습니다.
함수 fopen()은 두 개의 문자열 전달인자를 입력받아 처리하는 함수입니다.
이 함수 fopen의 반환값은 FILE*입니다.
반환값의 형식 FILE은 C언어에서 파일을 표현하는 형식이며 구조체로 되어 있죠.
FILE *는 구조체 FILE의 포인터 형입니다.
참고로, Dev-C++에서 stdio.h파일을 열어 FILE 구조체를 보면 다음과 같습니다.
파일 처리 종류 | 함수 fopen()의 파일 처리 종류를 정리했습니다 |
모 드 | 의 미 |
r | 읽기(read) 모드, 파일이 없을 경우 에러가 발생한다 |
w | 쓰기(write) 모드, 파일이 없으면 새로 만들고, 기존의 파일이 있으면 내용을 지우고 처음부터 기록한다 |
a | 파일의 맨 뒷 부분에 추가로 기록한다. 파일이 없으면 새로 만든다. |
r+ | 읽기(read)와 쓰기(write) 모드, 파일이 없을 경우 에러가 발생한다. |
w+ | 읽기(read)와, 쓰기(write) 모드, 파일이 없으면 새로 만들고, 기존의 파일이 있으면 그 이전의 내용을 지우고 처음부터 기록한다. |
a+ | 파일의 맨 뒷 부분에 추가로 기록한다. 파일이 없으면 새로 만들고, 기존의 파일이 있으면 파일의 맨 뒷 부분에 추가로 기록한다. 파일의 어느 곳이나 읽기는 가능하나 쓰기는 파일 끝에 추가적으로 가능하다 |
위의 mode 스트링은 다음과 같이 조합할 수 있습니다:
rt : 이미 존재하는 텍스트 파일을 읽기 전용으로 열기
rb : 이미 존재하는 이진 파일을 읽기 전용으로 열기
함수 fopen() 예제 |
아래의 예제는 함수 fopen()을 이용해서 test.txt파일을 읽기 모드로 열고 성공하면 "File Open Success" 메세지를, 실패하면 "File Open Error"라 출력하는 예제입니다.
#include<stdio.h> int main() { FILE *f ; if ( ( f = fopen("test.txt", "w") ) == NULL ) { printf("File Open error.\n") ; return -1 ; } printf("File Open Success.") ; fclose(f) ; return 0 ; }
위의 예제를 실행하면 아래와 같은 화면이 나옵니다.
'IT 이야기 > 프로그래밍' 카테고리의 다른 글
[HTML 쉽게 이해하기 강좌] - 주석문 (0) | 2011.12.02 |
---|---|
[HTML 쉽게 이해하기 강좌 #1] - HTML의 기본 (2) | 2011.12.02 |
[HTML/CSS] 마우스 커서 모양(스타일) 바꾸기 (1) | 2011.11.30 |
[강의] HTML5 그 두번째 이야기 - HTML5는 OOO가 다르다 (2) | 2011.11.05 |
[강의] HTML5란? HTML5 자세하게 알아보기 (2) | 2011.10.23 |
POST 방식과 GET 방식의 차이 (0) | 2011.10.17 |
모바일 홈페이지로 자동 이동시키는 소스 (2) | 2011.09.21 |
[HTML 쉽게 이해하기 강좌] 2단 레이아웃 한 방에 만들기 (4) | 2011.07.04 |
[HTML 쉽게 이해하기 강좌 #3] HTML의 기본 태그에 대해 알아보기 (2) | 2011.06.30 |
[HTML 쉽게 이해하기 강좌 #2] - HTML 시작하기 (0) | 2011.06.30 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
- W3Schools Online Web Tutorials
- 구차니의 잡동사니 모음
- [IT]블로거팁닷컴
- 비앤아이님의 블로그
- Blog Suspect
- 즐거운하루 blog
- zinicap의 검색엔진 마케팅(SEM)
- 머니야머니야님의 블로그
- [Friend] AtinStory
- [기타배우기]해브원 박스
- [웹표준] SINDB.com
- 해커 C 이야기
- [애드센스] 길라잡이
- 정순봉의 IT SCHOOL
- 씨디맨의 컴퓨터이야기
- 2proo Life Story
- 못된준코의 세상리뷰
- [IT강좌] 정보문화사
- IN 대전
- 에우르트는 나쁜남자 -_-
- 씬의 싱크탱크
- 엔돌슨의 IT이야기
- 진이늘이
- 'Cooltime'의 블로그
- 후이의 Tistory
- Soulstorage
- 앤드&엔드의 블로그
- June Blog
- 노지의 소박한 이야기
- gbWorld
- 인터넷 속 나의 생각
- HarshNix
- ART of WEB
- 녹두장군 - 상상을 현실로
TAG
- HTML
- 성공
- 강좌
- C
- MBTI
- JavaScript
- 프로그래밍 문제
- 안드로이드
- 소스코드
- MBTI 검사
- MBTI 테스트
- 프로그래밍
- 예제 소스
- C언어
- 인터넷
- C언어 소스
- MBTI 자료
- It
- 소스
- 효과음
- 리뷰
- 안드로이드 어플 추천
- 모토로이
- MBTI 강좌
- 인터넷 익스플로러
- C언어 문제
- php
- 강의
- 스마트폰
- 안드로이드 어플
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함