putc
, putwc
Grava um caractere em um fluxo.
Sintaxe
int putc(
int c,
FILE *stream
);
wint_t putwc(
wchar_t c,
FILE *stream
);
Parâmetros
c
O caractere a ser gravado.
stream
Ponteiro para a estrutura FILE
.
Retornar valor
Retorna o caractere gravado. Para indicar um erro ou condição de fim de arquivo, putc
e putchar
retornar . putwc
putwchar
WEOF
EOF
Para todas as quatro rotinas, use ferror
ou para verificar se há um erro ou feof
fim do arquivo. Se for passado um ponteiro nulo para stream
, o manipulador de parâmetros inválido será chamado, conforme descrito em Validação de parâmetro. Se a execução tiver permissão para continuar, essas funções retornarão EOF
ou WEOF
, e definirão errno
como EINVAL
.
Para obter mais informações sobre códigos de retorno, confira errno
, _doserrno
, _sys_errlist
e _sys_nerr
.
Comentários
A rotina putc
grava o único caractere c
para a saída stream
na posição atual. Qualquer inteiro pode ser passado para putc
, mas somente os 8 bits inferiores são gravados. A putchar
rotina é idêntica à putc( c, stdout )
. Para cada rotina, se ocorrer um erro de leitura, o indicador de erro para o fluxo será definido. putc
e são semelhantes a fputc
e , respectivamente, mas são implementados tanto como funções quanto como macros (consulte Recomendações para escolher entre funções e putchar
_fputchar
macros). putwc
e putwchar
são as versões de caractere largo de putc
e putchar
, respectivamente. putwc
e putc
terão comportamento idêntico se o fluxo for aberto no modo ANSI. Atualmente, putc
não dá suporte para a saída em um fluxo UNICODE.
As versões com o sufixo _nolock
são idênticas, exceto que não estão protegidas contra interferência de outros threads. Para obter mais informações, consulte _putc_nolock, _putwc_nolock.
Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, consulte Estado global na CRT.
Mapeamentos de rotina de texto genérico
Rotina TCHAR.H | _UNICODE e _MBCS não definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_puttc |
putc |
putc |
putwc |
Requisitos
Rotina | Cabeçalho necessário |
---|---|
putc |
<stdio.h> |
putwc |
<stdio.h> ou <wchar.h> |
Não há suporte para o console em aplicativos UWP (Plataforma Universal do Windows). Os identificadores de fluxo padrão associados ao console, stdin
, stdout
e stderr
, devem ser redirecionados antes que as funções em tempo de execução C possam usá-los em aplicativos UWP. Para obter informações sobre compatibilidade, consulte Compatibilidade.
Bibliotecas
Todas as versões das bibliotecas em tempo de execução C.
Exemplo
// crt_putc.c
/* This program uses putc to write buffer
* to a stream. If an error occurs, the program
* stops before writing the entire buffer.
*/
#include <stdio.h>
int main( void )
{
FILE *stream;
char *p, buffer[] = "This is the line of output\n";
int ch;
ch = 0;
/* Make standard out the stream and write to it. */
stream = stdout;
for( p = buffer; (ch != EOF) && (*p != '\0'); p++ )
ch = putc( *p, stream );
}
Saída
This is the line of output
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de