Duplicar posible:
Why are C character literals ints instead of chars?¿por qué sizeof ('a') es 4 en C?
#include<stdio.h>
int main(void)
{
char b = 'c';
printf("here size is %zu\n",sizeof('a'));
printf("here size is %zu",sizeof(b));
}
aquí salida se (Ver demostración en vivo here.)
here size is 4
here size is 1
No estoy recibiendo por qué es sizeof('a')
4?
Ver [¿Por qué C enteros caracteres literales en lugar de caracteres?] (Http://stackoverflow.com/questions/433895/why-are-c- character-literales-ints-instead-of-chars) –