ใน C ++ ขนาดของค่าคงที่อักขระคือ ถ่าน . ใน C ประเภทของค่าคงที่อักขระเป็นจำนวนเต็ม (int ). ดังนั้นใน C sizeof('a') คือ 4 สำหรับสถาปัตยกรรม 32 บิต และ CHAR_BIT คือ 8 แต่ sizeof(char) คือหนึ่งไบต์สำหรับทั้ง C และ C++
ตัวอย่าง
#include<stdio.h>
main() {
printf("%d", sizeof('a'));
} ผลลัพธ์
4
ตัวอย่าง
#include<iostream>
using namespace std;
main(){
cout << sizeof('a');
} ผลลัพธ์
1
ในทั้งสองกรณีเรากำลังทำเช่นเดียวกัน แต่ใน C sizeof('a') คืนค่า 4 เนื่องจากถือว่าเป็นจำนวนเต็ม แต่ใน C ++ มันคืนค่า 1 จะถือว่าเป็นอักขระ