¿Cómo utilizar la función fread en lenguaje C? ¿Por qué los datos de salida que escribo son incorrectos?
En lenguaje C: fread es una función. Se pueden leer datos de una secuencia de archivos. Cada elemento tiene un tamaño de bytes. Si la llamada se realiza correctamente, se devuelve el número real de elementos leídos. Si no se realiza correctamente, se lee el final del archivo. es devuelto. Prototipo de función: size_t fread (void *buffer, size_t size, size_t count, FILE *stream); Parámetros: ¿la dirección de memoria utilizada para recibir el tamaño de los datos? ¿El número de bytes de cada elemento de datos que se va a leer, en bytes? El número de elementos de datos que se leerán, cada elemento de datos tiene un tamaño de bytes.stream. El puntero del flujo de entrada. Valor de retorno: devuelve el número real de elementos leídos. Si el valor de retorno no es el mismo que el recuento, es posible que haya un final de archivo o que se produzca un error. Obtenga información de error de ferror y feof o detecte si se ha llegado al final del archivo.
Rutina: #include
#include
int?main(void)
{
FILE*stream;
char?msg[]="¿esto?es?una?prueba";
char?buf[20]; /p>
if((stream=fopen("DUMMY.FIL","w+"))==NULL)
{
fprintf(stderr,"¿No se puede? open?outputfile.\n");
return?0;
}
fwrite(msg,1,strlen(msg)+1,stream ) ;
fseek(flujo,0,SEEK_SET);
fread(buf,strlen(msg)+1,1,flujo);
printf( " %s\n",buf);
fclose(stream);
return0;
}