파일 열기
FILE*fopen(const char *filename, const char*mode);
FILE*fp = fopen("A.txt","r"); <- 1줄짜리로 사용하고 싶을때 사용
FILE*f = fopen("A.txt","r");
FILE*fp; <- 2줄짜리를 사용하고 싶을때 사용
파일입출력 함수 원형과 함수를 호출했을 때
1. 인자의개수
2. 인자의 type
3. 반환값 일치 여부
순으로 반환괎 일치 여부를 판별한다.
이소스를 사용하면 메모장에 글자가 입력된다.
#include <stdio.h>
int main()
{
FILE*fp = fopen("A.txt","w");
printf("안녕하세요\n");
fprintf(fp,"하이하이\n");
fclose(fp);
return 0;
}
이 소스를 사용할 경우 현재 디렉토리에 A라는 이름의 텍스트 파일이 생성된다.
용어 정리
- 스트림(stream) : 1byte씩 전송하는것을 스트림이라고 한다. ex) 음악 스트리밍
- 내부버퍼 : 임시적 내부 저장공간
- fp : file pointer 현재 읽고 있는 위치 ex) 음악을 어느정도 위치까지 들었는지 가르키는 것
- 액세스 - 접근하다. 건드리는 것
- 파티션 - 일정한 공간을 쪼개는 것
- 드라이브 : 파티션을 구분하는 것
드라이브 명을 기준으로 시작하는것을 절대 드라이브라고 한다.
C:\ , \ = 절대경로
CR - Carriage Return \r[13]
LF - Line Feed \n [10]
\n은 두가지를 다 이행시켜 준다.
if(A == EOF)
EOF = End Of File
fopen
#include <stdio.h>
int main()
{
FILE *f;
f=fopen("C:\\영화\\영구와 땡칠이.avi","rb");
if(f==NULL){
printf("얼시구. 파일이 안 보이네요\ㅜ");
}
return 0;
}
리턴값이 주소일 경우 0을 많이 리턴해주고, 정수를 리턴하는 경우에는 음수값을 리턴해준다. 보통 -1을 리턴해준다.
위와 같은 결과가 나온다.
헥사값을 구하는 방법
#include <stdio.h>
void Hexaview(unsigned char *ucpData, unsigned int uiLen)
{
unsigned int uiCnt;
unsigned int ui16Cnt;
printf("=======================\n");
printf("======hexa viewer======\n");
uiCnt = 0;
while(160>uiCnt)
{
printf("%p ", uiCnt);
ui16Cnt = 0;
while(16>ui16Cnt)
{
printf("%02X ", *ucpData);
ui16Cnt = ui16Cnt+1;
ucpData = ucpData+1;
}
printf("\n");
uiCnt = uiCnt+16;
}
}
이러한 결과가 나온다.
'코스웨어 > 16년 스마트컨트롤러' 카테고리의 다른 글
20160308_양준우_업무일지_그밖의기초학습 (4) | 2016.03.08 |
---|---|
20160308_최기영_업무일지 (2) | 2016.03.08 |
2016.03.07 이종찬 업무일지 (6) | 2016.03.08 |
20160307_오아람_업무일지_파일입출력 (2) | 2016.03.08 |
20160307- 송찬호-업무일지-파일 입출력 (2) | 2016.03.08 |
20160307_김가연_업무일지_while을 이용한 반복문 활용 (3) | 2016.03.08 |
20160307-허도경-업무일지-파일 입출력 (5) | 2016.03.08 |
20160307_최기영_업무일지_파일입출력 (8) | 2016.03.08 |