Pregunta simple: ¿Scanf puede leer/aceptar un "pequeño entero" en un carácter sin signo en ANSI C? códigoANSI C (ISO C90): ¿Puede scanf leer/aceptar un carácter no firmado?
ejemplo un_char.c:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
unsigned char character;
scanf("%hhu", &character);
return EXIT_SUCCESS;
}
compilado como:
$ gcc -Wall -ansi -pedantic -o un_char un_char.c
un_char.c: In function ‘main’:
un_char.c:8: warning: ISO C90 does not support the ‘hh’ gnu_scanf length modifier
hh
no es compatible con ISO C90. Entonces, ¿qué conversión de escaneo se puede utilizar en esta situación?
Cambia '-ansi' a' -std = c99' si no necesitas que tu código funcione en Windows. – zwol