putchar
, putwchar
Escribe un carácter en stdout
.
Sintaxis
int putchar(
int c
);
wint_t putwchar(
wchar_t c
);
Parámetros
c
Carácter que se va a escribir.
Valor devuelto
Devuelve el carácter escrito. Para indicar un error o una condición de fin de archivo, putc
y putchar
devolver EOF
; putwc
y putwchar
devolver WEOF
. Para las cuatro rutinas, use ferror
o feof
para comprobar si hay un error o un final del archivo. Si se pasa un puntero nulo para stream
, estas funciones generan una excepción de parámetro no válida, como se describe en Validación de parámetros. Si la ejecución puede continuar, devuelven EOF
o WEOF
y se establecen en errno
EINVAL
.
Para obtener más información sobre los códigos de retorno, vea errno
, _doserrno
, _sys_errlist
y _sys_nerr
.
Comentarios
La rutina putc
escribe el carácter individual c
en la salida stream
en la posición actual. Se puede pasar cualquier entero a putc
, pero solo se escriben los 8 bits inferiores. La putchar
rutina es idéntica a putc( c, stdout )
. Para cada rutina, si se produce un error de lectura, se establece el indicador de error para el flujo. putc
y putchar
son similares a fputc
y _fputchar
, respectivamente, pero se implementan como funciones y como macros (vea Recomendaciones para elegir entre funciones y macros). putwc
y putwchar
son versiones con caracteres anchos de putc
y putchar
, respectivamente.
Las versiones con el sufijo _nolock
son idénticas, salvo que no están protegidas contra interferencias de otros subprocesos. Pueden ser más rápidas, porque no incurren en la sobrecarga de bloquear otros subprocesos. Use estas funciones solo en contextos seguros para subprocesos como aplicaciones de un único subproceso o donde el ámbito de llamada ya controle el aislamiento de subprocesos.
De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.
Asignaciones de rutinas de texto genérico
Rutina TCHAR.H | _UNICODE y _MBCS no definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_puttchar |
putchar |
putchar |
putwchar |
Requisitos
Routine | Encabezado necesario |
---|---|
putchar |
<stdio.h> |
putwchar |
<stdio.h> o <wchar.h> |
La consola no se admite en las aplicaciones de la Plataforma universal de Windows (UWP). Los identificadores de flujo estándar asociados a la consola, stdin
, stdout
y stderr
, se deben redirigir antes de que las funciones en tiempo de ejecución de C puedan usarlos en aplicaciones para UWP. Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Bibliotecas
Todas las versiones de las bibliotecas en tiempo de ejecución de C.
Ejemplo
// crt_putchar.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;
for( p = buffer; (ch != EOF) && (*p != '\0'); p++ )
ch = putchar( *p );
}
Output
This is the line of output