Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

ชนิดข้อมูลของค่าคงที่อักขระใน C และ C++


ใน 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 จะถือว่าเป็นอักขระ