#include <stdio.h> FILE *fdopen (int fildes, const char *mode);
Valor de retorno: ponteiro sobre o arquivo associado ao descritor fields, ou a constante prédefinida (dentro de <stdio.h>) e NULL em caso de erro.
A função fdopen() associa uma stream com o descritor de arquivo existente fildes. O parâmetro mode da stream indica a forma de abertura do arquivo.
Esta função faz a ligação entre as manipulações de arquivos da biblioteca padrão C, que utiliza ponteiros para os objetos do tipo FILE (fclose(), fflush(), fprintf(), fscanf(), ...), e as primitivas de baixo nível (open(), write(), read(), ...) que utilizam descritores de arquivo do tipo int. O detalhamento da biblioteca padrão em C não faz parte do escopo deste manual e maiores detalhes devem ser buscados na bibliografia recomendada.
Observação:
O arquivo deve, anteriormente, ter sido aberto através da primitiva
open(). Por outro lado, o parâmetro mode escolhido
deve ser compatível com o modo utilizado durante a abertura do arquivo
com o open(). Este parâmetro pode ter os seguintes valores:
Exemplo:
/* Abertura precedente por open(), por exemplo em leitura */ if ( (fd=open("meu\_arquivo", O\_RDONLY, 0666) ) == -1) perror("Error open()"); /* Associação de fp (do tipo FILE*) a fd (de tipo int) */ if ( (fd=open(fd, "r") ) == -1) perror("Error fdopen()");