fputc, fputwc
Grava um caractere em um fluxo.
int fputc(
int c,
FILE *stream
);
wint_t fputwc(
wchar_t c,
FILE *stream
);
Parâmetros
c
Caractere a ser gravado.stream
Ponteiro a estrutura de FILE .
Valor de retorno
Cada uma dessas funções retorna o caractere escrito. Para fputc, um valor de retorno de EOF indica um erro. No caso de fputwc, um valor de retorno de WEOF indica um erro. Se stream for NULL, essas funções chamarão o manipulador de parâmetro inválido, como descrito em Validação do parâmetro. Se a execução puder continuar, elas retornarão EOF e definirão errno como EINVAL.
Para obter mais informações sobre esses e outros códigos de erro, consulte _doserrno, errno, _sys_errlist, and _sys_nerr.
Comentários
Cada uma dessas funções grava o caractere único c a um arquivo na posição indicada pelo indicador de posição associado do arquivo (se definido) e avança o indexador conforme apropriado. No caso de fputc e de fputwc, o arquivo é associado com stream*.* Se o arquivo não puder suportar solicitações de posicionamento ou tiver sido aberto em modo de anexação, o caractere é acrescentado ao final de fluxo.
As duas funções se comportam de maneira idêntica, se o fluxo estiver aberto no modo de ANSI. fputc não tem suporte para saída em um fluxo UNICODE.
As versões com o sufixo _nolock são idênticas, exceto pelo fato de que não são protegidas contra interferência de outros threads. Para obter mais informações, consulte_fputc_nolock, _fputwc_nolock.
As observações específicas da rotina são as seguintes:
Rotina |
Comentários |
---|---|
fputc |
Equivalente a putc, mas somente implementado como uma função, em vez de como uma função e uma macro. |
fputwc |
Versão de caracteres largos de fputc. Grava c como um caractere de multibyte ou um caractere largo, de acordo com o modo em que stream é aberto - modo de texto ou modo binário. |
Mapeamentos da rotina de texto genérico
Rotina TCHAR.H |
_UNICODE & _MBCS não definido |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_fputtc |
fputc |
fputc |
fputwc |
Requisitos
Função |
Cabeçalho necessário |
---|---|
fputc |
<stdio.h> |
fputwc |
<stdio.h> ou <wchar.h> |
O console não tem suporte em aplicativos do Windows Store. Os manipuladores de fluxo padrão associados ao console — stdin, stdout e stderr — devem ser redirecionados antes que as funções de tempo de execução do C possam utilizá-los em aplicativos do Windows Store. Para informações adicionais de compatibilidade, consulte Compatibilidade.
Exemplo
// crt_fputc.c
// This program uses fputc
// to send a character array to stdout.
#include <stdio.h>
int main( void )
{
char strptr1[] = "This is a test of fputc!!\n";
char *p;
// Print line to stream using fputc.
p = strptr1;
while( (*p != '\0') && fputc( *(p++), stdout ) != EOF ) ;
}