Trong C++, kích thước hằng ký tự (character constant) là char. Trong C, kiểu của hằng ký tự là nguyên (int). Do đó trong C, sizeof('a') là 4 trên kiến trúc 32-bit, và CHAR_BIT là 8. Nhưng sizeof(char) là 1 byte cho cả C và C++.
Ví dụ C
#include <stdio.h>
main() {
printf("%d", sizeof('a'));
}
Kết quả
4
Ví dụ C++
#include <iostream>
using namespace std;
main() {
cout << sizeof('a');
}
Kết quả
1
Cả hai làm cùng việc, nhưng C sizeof('a') trả về 4 vì coi như int. C++ trả về 1 vì coi như char.