Função da biblioteca C - fwrite ()

Descrição

A função da biblioteca C size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream) grava dados da matriz apontada, por ptr para o dado stream.

Declaração

A seguir está a declaração da função fwrite ().

size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)

Parâmetros

  • ptr - Este é o ponteiro para a matriz de elementos a serem gravados.

  • size - Este é o tamanho em bytes de cada elemento a ser escrito.

  • nmemb - Este é o número de elementos, cada um com um tamanho de size bytes.

  • stream - Este é o ponteiro para um objeto FILE que especifica um fluxo de saída.

Valor de retorno

Esta função retorna o número total de elementos retornados com sucesso como um objeto size_t, que é um tipo de dados integral. Se este número for diferente do parâmetro nmemb, ele mostrará um erro.

Exemplo

O exemplo a seguir mostra o uso da função fwrite ().

#include<stdio.h>

int main () {
   FILE *fp;
   char str[] = "This is tutorialspoint.com";

   fp = fopen( "file.txt" , "w" );
   fwrite(str , 1 , sizeof(str) , fp );

   fclose(fp);
  
   return(0);
}

Vamos compilar e executar o programa acima que irá criar um arquivo file.txt que terá o seguinte conteúdo -

This is tutorialspoint.com

Agora vamos ver o conteúdo do arquivo acima usando o seguinte programa -

#include <stdio.h>

int main () {
   FILE *fp;
   int c;

   fp = fopen("file.txt","r");
   while(1) {
      c = fgetc(fp);
      if( feof(fp) ) {
         break ;
      }
      printf("%c", c);
   }
   fclose(fp);
   return(0);
}

Vamos compilar e executar o programa acima para produzir o seguinte resultado -

This is tutorialspoint.com