Função creat

Sintaxe:

int creat(const char * path, mode_t mode);


Quando se quer abrir um arquivo e criar o mesmo caso não exista ou truncar o mesmo caso já exista pode-se usar a função creat.

O arquivo será aberto somente para gravação pois esta função é equivalente a chamada da função open com os parâmetros abaixo.

open (path, O_WRONLY | O_CREAT | O_TRUNC, mode);

A função creat exige que se coloque o parâmetro de permissão conforme já definido na função open.

Veja o exemplo:

#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <fcntl.h>
#include <string.h>
 
int main (int argc, char  *argv[])
{
   int     iFileDescriptor;
 
   if( argc < 2 )
   {
      fprintf(stderr,"Obrigatório informar o nome do arquivo\n");
      exit(1);
   }
 
   printf("Criando o arquivo %s com a funcao 'creat()'\n", argv[1]);
 
   iFileDescriptor = creat (argv[1], 0755); /* obrigatorio informar as permissoes */
 
   if (iFileDescriptor < 0)
   {
      fprintf (stderr, "Erro : %s\n", strerror(errno));
      exit(errno); /* informa o codigo de erro para o sistema operacional */
   }
   printf ("Arquivo criado\n");
 
   close (iFileDescriptor);
 
   return 0;
}

Marcos Laureano 2008/04/25 07:14