NOME¶
stdio - funções da biblioteca padrão de
entrada/saída
SINOPSE¶
#include <stdio.h>
FILE *stdin;
FILE *stdout;
FILE *stderr;
DESCRIÇÃO¶
A biblioteca padrão de E/S provê uma interface de E/S de fluxo
'bufferizada' simples e eficiente. Entrada e saída são mapeados
para correntes lógicas de dados, e as características
físicas de E/S são omitidas. As funções e macros
são listadas abaixo; mais informações são
disponíveis das páginas de manual individuais.
Uma corrente é associada a um arquivo externo (que pode ser um
dispositivo físico) pela
abertura de um arquivo, que pode
envolver a criação de um novo arquivo. A criação
de um arquivo já existente faz com que seu conteúdo anterior
seja descartado. Se um arquivo pode suportar pedidos de posicionamento (como
um arquivo de disco, ao contrário de um terminal), então um
indicador de posição de arquivo associado com a corrente
é posicionada no início do arquivo (byte zero), a menos que o
arquivo seja aberto no modo 'acréscimo'. Se é usado o modo
'acréscimo', o indicador de posição será colocado
no fim de arquivo. O indicador de posição é mantido por
leituras, escritas e pedidos de posicionamento subsequentes. Todas as entradas
ocorrem como se os caracteres fossem lidos por chamadas successivas à
função
fgetc(3) ; todas as saídas ocorrem como se
todos os caracteres fossem lidos por chamadas successivas à
função
fputc(3).
Um arquivo é desassociado de um fluxo pelo
fechamento do arquivo.
Fluxos de saída são esvaziados (qualquer conteúdo de
buffer não escrito é transferido para o ambiente do host) antes
do fluxo ser desassociado do arquivo. O valor de um ponteiro para um objeto
FILE é indeterminado depois que um arquivo é fechado
(lixo).
Um arquivo pode ser reaberto subsequentemente, pela mesma ou por outra
execução do programa, e seu conteúdo pode ser
reivindicado ou modificado (se ele puder ser reposicionado no início).
Se a função principal retorna para o seu chamador original ou a
função
exit(3) é chamada, todos os arquivos
abertos são fechados (portanto todos os fluxos são esvaziados)
antes do encerramento do programa. Outros métodos de encerramento de
programa, como o
abort(3) , não se preocupam com o fechamento
adequado dos arquivos.
Na inicialização de programas, três fluxos de texto
são predefinidos e não precisam ser abertos explicitamente
—
standard input (para a entrada convencional de leitura),
—
standard output (para a entrada convencional de escrita), and
standard error (para saída de diagnóstico de escrita).
Estes fluxos são abreviados como
stdin,
stdout e
stderr. Quando abertos, o fluxo de erro padrão não
é completamente armazenados; os fluxos padrão de entrada e
saída são completamente armazenados se, e somente se, os fluxos
não se referem a um dispositivo interativo.
Fluxos de saída que se referem a dispositivos de terminal são
sempre armazenados em linha por padrão; saídas pendentes para
tais fluxos são escritos automaticamente sempre que que se lê um
fluxo de entrada que se refere a um dispositivo de terminal. Nos casos onde
uma grande quantidade de computações é feita depois do
serviço de impressão de uma linha em um terminal de
saída, é necessário executar
fflush(3) na
saída padrão antes do término e da
computação, de forma que a saída apareça.
A biblioteca
stdio é uma parte da biblioteca
libc , e as
rotinas são carregadas automaticamente, conforme necessárias
para os compiladores
cc(1) e
pc(1). As seções
SINOPSE das seguintes páginas de manual indicam quais arquivos
de inclusão devem ser usados, com que se parecem as
declarações do compilador para a função, e quais
variáveis externas são de interesse.
As seguintes são definidas como macros; estes nomes não podem ser
reusados sem primeiro remover suas definições atuais com
#undef:
BUFSIZ,
EOF,
FILENAME_MAX,
FOPEN_MAX,
L_cuserid,
L_ctermid,
L_tmpnam,
NULL,
SEEK_END,
SEEK_SET,
SEE_CUR,
TMP_MAX,
clearerr,
feof,
ferror,
fileno,
fropen,
fwopen,
getc,
getchar,
putc,
putchar,
stderr,
stdin,
stdout. Versões de
função das funções de macro
feof,
ferror,
clearerr,
fileno,
getc,
getchar,
putc, e
putchar existem e serão usadas se as
definições de macros são removidas explicitamente.
VEJA TAMBÉM¶
open(2),
close(2),
read(2),
write(2),
stdout(3)
BUGS¶
As funções armazenadas padrão não interagem bem com
certas outras funções de biblioteca e sistema, especialmente
vfork e
abort. Isto pode não ser o caso no Linux.
PADRÕES¶
A biblioteca
stdio tem conformidade com ANSI X3.159-1989 (``ANSI C'').
LISTA DE FUNÇÕES¶
- Função
- Descrição
- clearerr
- verifica e resseta o estado do fluxo
- fclose
- fecha um fluxo
- fdopen
- funções de abertura de fluxo
- feof
- verifica e resseta o estado do fluxo
- ferror
- verifica e resseta o estado do fluxo
- fflush
- esvazia um fluxo
- fgetc
- captura o próximo caractere ou palavra do fluxo de entrada
- fgetline
- captura uma linha do fluxo
- fgetpos
- reposiciona um fluxo
- fgets
- captura uma linha de um fluxo
- fileno
- verifica e resseta o estado do fluxo
- fopen
- funções de abertura do fluxo
- fprintf
- conversão formatada de saída
- fpurge
- esvazia um fluxo
- fputc
- envia um caractere ou palavra para um fluxo
- fputs
- envia uma linha para um fluxo
- fread
- entrada/saída binária de fluxo
- freopen
- funções de abertura de fluxo
- fropen
- abre um fluxo
- fscanf
- conversão de formato de entrada
- fseek
- reposiciona um fluxo
- fsetpos
- reposiciona um fluxo
- ftell
- reposiciona um fluxo
- fwrite
- entrada/saída binária de fluxo
- getc
- captura o próximo caractere ou palavra do fluxo de entrada
- getchar
- captura o próximo caractere ou palavra do fluxo de entrada
- gets
- captura uma nova linha do fluxo
- getw
- captura o próximo caractere ou palavra do fluxo de entrada
- mktemp
- faz nome de arquivo temporário (único)
- perror
- mensagens de erro do sistema
- printf
- conversão de saída formatada
- putc
- envia um caractere ou palavra para um fluxo
- putchar
- envia um caractere ou palavra para um fluxo
- puts
- envia uma linha para um fluxo
- putw
- envia um caractere ou palavra para um fluxo
- remove
- remove entrada de diretório
- rewind
- reposiciona um fluxo
- scanf
- conversão de formato de entrada
- setbuf
- operações de armazenamento de fluxo
- setbuffer
- operações de armazenamento de fluxo
- setlinebuf
- operações de armazenamento de fluxo
- setvbuf
- operações de armazenamento de fluxo
- sprintf
- conversão de saída formatada
- sscanf
- conversão de formato de entrada
- strerror
- mensagens de erro de sistema
- sys_errlist
- mensagens de erro de sistema
- sys_nerr
- mensagens de erro de sistema
- tempnam
- rotinas de arquivo temporário
- tmpfile
- rotinas de arquivo temporário
- tmpnam
- rotinas de arquivo temporário
- ungetc
- devolve caractere para um fluxo de entrada
- vfprintf
- conversão de saída formatada
- vfscanf
- conversão de formato de entrada
- vprintf
- conversão de saída formatada
- vscanf
- conversão de formato de entrada
- vsprintf
- conversão de saída formatada
- vsscanf
- conversão de formato de entrada
TRADUÇÃO PARA A LÍNGUA PORTUGUESA¶
RUBENS DE JESUS NOGUEIRA <darkseid99@usa.net> (tradução)
XXXXXX XX XXXXX XXXXXXXX <xxxxxxxxxx@xxx.xxx> (revisão)