Data type of character constants in C and C++
In C, data type of character constants is int, but in C++, data type of same is char. If we save below program as test.c then we get 4 as output (assuming size of integer is 4 bytes) and if we save the same program as test.cpp then we get 1(assuming size of char is 1 byte)
C++
// C++ program demonstrating that data type of character // constants in C++ is same as 'char' #include <iostream> using namespace std; int main() { cout << sizeof ( 'a' ); return 0; } // This code is contributed by sarajadhav12052009 |
C
#include <stdio.h> int main() { printf ( "%lu" , sizeof ( 'a' )); getchar (); return 0; } |
Output of C++ program:
1
Output of C program:
4
References: http://en.wikipedia.org/wiki/C_syntax#Character_constants