size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream)
: 메모리에서 지정된 주소(ptr)로부터 데이터를 읽어, 크기(size)와 개수(count)만큼 파일 스트림(열어놓은 파일)에 이진 형식으로 저장한다.
#include <stdio.h>
int main(void)
{
FILE* fp = NULL;
int a = 10;
fp = fopen("binary.bin", "rb"); //바이너리로 오픈
if (fp == NULL) {
fprintf(stderr, "원본 파일 apple.txt를 열 수 없습니다.\n");
exit(1);
}
fwrite(&a, sizeof(a), 1, fp);
fclose(fp);
return 0;
}
size_t fread(void *ptr, size_t size, size_t count, FILE *stream)
: 파일에서 지정된 크기(size)와 개수(count)만큼 데이터를 읽어 메모리의 지정된 주소(ptr)에 저장한다.
binary.bin
00000000 00000000 00000000 00001111
#include <stdio.h>
#include <stdlib.h> // exit 함수 사용을 위해 필요
int main(void)
{
FILE* fp = NULL;
int a = 0; // 파일에서 읽어올 값을 저장할 변수
fp = fopen("binary.bin", "rb"); // 바이너리 파일 읽기 모드로 열기
if (fp == NULL) {
fprintf(stderr, "파일 binary.bin을 열 수 없습니다.\n");
exit(1);
}
fread(&a, sizeof(a), 1, fp); // 파일에서 정수 1개를 읽어 변수 a에 저장
printf("파일에서 읽어온 값: %d\n", a); // 읽어온 값 출력
// 출력
// 파일에서 읽어온 값: 15
fclose(fp); // 파일 닫기
return 0;
}
'2학년 2학기 > c언어' 카테고리의 다른 글
13-1장 동적 메모리 할당란? (0) | 2024.11.19 |
---|---|
12-8장 파일 포인터 (0) | 2024.11.19 |
12-6장 형식화된 입출력(fscanf, fprintf) (0) | 2024.11.18 |
12-5장 문자열 입출력 함수(fgets, fputs) (0) | 2024.11.18 |
12-4장 문자 단위 입력출력 함수(fgetc, fputc) (0) | 2024.11.18 |