C ++ fwrite () - Biblioteca estándar de C ++

La función fwrite () en C ++ escribe un número específico de caracteres en el flujo de salida dado.

prototipo fwrite ()

 size_t fwrite (const void * buffer, size_t size, size_t count, FILE * stream);

La fwrite()función escribe el número de recuento de objetos, cada uno de tamaño bytes en el flujo de salida dado.

Es similar a llamar a fputc () size times para escribir cada objeto. Según el número de caracteres escritos, se incrementa el indicador de posición del archivo. El valor resultante del indicador de posición del archivo para la secuencia es indeterminado si se produce algún error al leer el archivo.

  • Si los objetos no se pueden copiar trivialmente, el comportamiento no está definido.
  • Si el tamaño o el recuento es cero, una llamada a fwritedevolverá cero y no se realizará ninguna otra acción.

Está definido en el archivo de encabezado.

Parámetros de fwrite ()

  • búfer: puntero al bloque de memoria cuyo contenido está escrito.
  • size: Tamaño de cada objeto en bytes.
  • count: el número de objetos para leer.
  • stream: el flujo de archivos en el que escribir los datos.

fwrite () Valor de retorno

La fwrite()función devuelve el número de objetos leídos correctamente. Si ocurre un error, el valor de retorno puede ser menor que el recuento.

Ejemplo 1: Cómo funciona la función fwrite ()

 #include #include using namespace std; int main() ( int retVal; FILE *fp; char buffer() = "Writing to a file using fwrite."; fp = fopen("data.txt","w"); retVal = fwrite(buffer,sizeof(buffer),1,fp); cout << "fwrite returned " << retVal; return 0; )

Cuando ejecute el programa, el contenido del búfer se escribirá en el archivo y la salida será:

 fwrite devolvió 1

Ejemplo 2: Cómo funciona la función fwrite () cuando el recuento o el tamaño es cero

 #include #include using namespace std; int main() ( int retVal; FILE *fp; char buffer() = "Writing to a file using fwrite."; fp = fopen("myfile.txt","w"); retVal = fwrite(buffer,sizeof(buffer),0,fp); cout << "When count = 0, fwrite returned " << retVal << endl; retVal = fwrite(buffer,0,1,fp); cout << "When size = 0, fwrite returned " << retVal << endl; return 0; )

Cuando ejecute el programa, la salida será:

 Cuando count = 0, fwrite devolvió 0 Cuando size = 0, fwrite devolvió 0

Articulos interesantes...