fread(); fwrite(); 이해가 안가네요. m,.m;
글쓴이: kernelbomb / 작성시간: 화, 2003/09/30 - 10:51오전
그동안 저수준 입/출력 함수만 사용해 왔습니다.
fread(); fwrite() 함수를 알았는데
man페이지를 봐도 이해가 안가네요.
Quote:
#include <stdio.h>size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);
size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);
DESCRIPTION
The function fread reads nmemb elements of data, each size bytes long, from the stream
pointed to by stream, storing them at the location given by ptr.The function fwrite writes nmemb elements of data, each size bytes long, to the stream
pointed to by stream, obtaining them from the location given by ptr.
설명을 보면 fread()의 경우 파일 스트림에서 size만큼의 nmemb요소를
읽어 버퍼에 저장한다는거 같은데.. 그럼 size * nmemb 이렇게 해석해도
되는 건가요? 헷갈리네요. ㅜㅜ;
Forums:
size * nmemb 가 맞습니다.
size * nmemb가 맞습니다.
fread, fwrite는 원하는 크기의 블럭 몇개 읽거나 쓰겠다는 식으로 사용합니다.
그러므로 실제 읽어지거나 써진 크기는 블럭크기 * 블럭개수 입니다.
함수 리턴값은 실재로 읽거나 쓰는데 성공한 블럭 개수가 반환됩니다.
감사합니다.
아~
fread(buffer, 10, 5, fp);
이렇게 하면 10바이트씩 5블럭을 읽어 들인다는 뜻이군요.
감사합니다. *^^*
당신들을 사랑합니다.
이진파일을 읽어들일때 fread와 fwrite를 사용합니다.문자나
이진파일을 읽어들일때 fread와 fwrite를 사용합니다.
문자나 문자열은 fputs나 fgets를 사용하시구요
용모수려 재색겸비
댓글 달기