It is more liquely a wchar_t (wide character) which is the default value for a litteral char. It is 32 bits large with gcc (it is compiler-dependent). -- *Ernest Galbrun*
On Mon, Jan 2, 2012 at 10:26, Carlos Guia <[email protected]>wrote: > I guess the compiler treats 'a' as an integral constant and ends up using > int to represent it. > > Carlos Guía > > > > On Mon, Jan 2, 2012 at 2:51 AM, Shoubhik <[email protected]> wrote: > >> #include<stdio.h> >> >> int main() >> { >> >> char ch; >> fflush(stdin); >> ch=getchar(); >> printf("ch= %d a=%d char=%d", >> sizeof(ch),sizeof('a'),sizeof(char)); >> >> >> } >> >> I type in 'a' (without quotes) as input , and the output I got in my >> ***gcc version 4.5.1*** is : >> >> ch= 1 a=4 char=1 >> >> My question is : >> >> If sizeof(c) is 1 , then how can sizeof('a') be 4 ? >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Google Code Jam" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected]. >> For more options, visit this group at >> http://groups.google.com/group/google-code?hl=en. >> >> > -- > You received this message because you are subscribed to the Google Groups > "Google Code Jam" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/google-code?hl=en. > -- You received this message because you are subscribed to the Google Groups "Google Code Jam" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-code?hl=en.
