Toon posts:

[C] fread() buffer grootte

Pagina: 1
Acties:

Verwijderd

Topicstarter
fread() gebruikt een buffer, voor zover ik weet. fwrite() ook? Weet iemand hoe dit werkt en hoe ik de buffergrootte kan veranderen?

  • Radiant
  • Registratie: Juli 2003
  • Niet online

Radiant

Certified MS Bob Administrator

Uit "man fwrite":
SYNOPSIS
#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);
size_t size staat tot hoe ver fwrite() moet lezen uit *ptr, dus daar kan je je buffer grootte in opgeven.

[ Voor 4% gewijzigd door Radiant op 19-10-2004 23:47 ]


Verwijderd

Topicstarter
Ik bedoel dus dat fread intern een buffer gebruikt. Dus bijvoorbeeld 1 KB vooruit leest en dat bewaart voor als je straks nog een beetje van die 1 KB wilt lezen.

Verwijderd

Dat doet fread() niet maar het operating system.

Dat klopt, en dat heet een cache.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

setvbuf () is de functie die je zoekt

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • igmar
  • Registratie: April 2000
  • Laatst online: 12-05 15:46

igmar

ISO20022

Verwijderd schreef op 19 oktober 2004 @ 23:43:
fread() gebruikt een buffer, voor zover ik weet. fwrite() ook? Weet iemand hoe dit werkt en hoe ik de buffergrootte kan veranderen?
code:
1
man 3 stdio

en dan kom je al vrij snel uit bij

code:
1
man 3 setbuffer
Pagina: 1