sprintf c
Salida de carácter individual en C (4)
Como se menciona en una de las otras respuestas, puede usar putc (int c, FILE * stream), putchar (int c) o fputc (int c, FILE * stream) para este fin.
Lo que es importante tener en cuenta es que el uso de cualquiera de las funciones anteriores es de algunos a significativamente más rápido que el uso de cualquiera de las funciones de análisis de formato como printf.
Usar printf es como usar una ametralladora para disparar una bala.
Al imprimir un solo carácter en un programa C, ¿debo usar "% 1s" en la cadena de formato? ¿Puedo usar algo como "% c"?
char variable = ''x''; // the variable is a char whose value is lowercase x
printf("<%c>", variable); // print it with angle brackets around the character
Tenga cuidado con la diferencia entre ''c''
y "c"
''c''
es un char adecuado para formatear con% c
"c"
es un carácter * que apunta a un bloque de memoria con una longitud de 2 (con el terminador nulo).
sí, %c
imprimirá un solo carácter:
printf("%c", ''h'');
también, putchar
/ putc
también funcionará. De "hombre putchar":
#include <stdio.h>
int fputc(int c, FILE *stream);
int putc(int c, FILE *stream);
int putchar(int c);
* fputc() writes the character c, cast to an unsigned char, to stream.
* putc() is equivalent to fputc() except that it may be implemented as a macro which evaluates stream more than once.
* putchar(c); is equivalent to putc(c,stdout).
EDITAR:
También tenga en cuenta que si tiene una cadena, para generar un solo carácter, necesita obtener el carácter en la cadena que desea generar. Por ejemplo:
const char *h = "hello world";
printf("%c/n", h[4]); /* outputs an ''o'' character */