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

ขนาดตัวดำเนินการใน C


ตัวดำเนินการ sizeof คือตัวดำเนินการทั่วไปใน C ซึ่งเป็นตัวดำเนินการ unary เวลาคอมไพล์และใช้ในการคำนวณขนาดของตัวถูกดำเนินการ ส่งกลับขนาดของตัวแปร สามารถใช้ได้กับชนิดข้อมูลใด ๆ ชนิดลอย ตัวแปรชนิดตัวชี้

เมื่อใช้ sizeof() กับประเภทข้อมูล ก็จะคืนค่าจำนวนหน่วยความจำที่จัดสรรให้กับประเภทข้อมูลนั้น เอาต์พุตอาจแตกต่างกันในเครื่องที่แตกต่างกัน เช่น ระบบ 32 บิตสามารถแสดงเอาต์พุตที่แตกต่างกัน ในขณะที่ระบบ 64 บิตสามารถแสดงประเภทข้อมูลที่แตกต่างกันได้

นี่คือตัวอย่างในภาษา C

ตัวอย่าง

#include <stdio.h>
int main() {
int a = 16;
   printf("Size of variable a : %d\n",sizeof(a));
   printf("Size of int data type : %d\n",sizeof(int));
   printf("Size of char data type : %d\n",sizeof(char));
   printf("Size of float data type : %d\n",sizeof(float));
   printf("Size of double data type : %d\n",sizeof(double));
   return 0;
}

ผลลัพธ์

Size of variable a : 4
Size of int data type : 4
Size of char data type : 1
Size of float data type : 4
Size of double data type : 8

เมื่อ sizeof() ใช้กับนิพจน์ มันจะคืนค่าขนาดของนิพจน์ นี่คือตัวอย่าง

ตัวอย่าง

#include <stdio.h>
int main() {
   char a = 'S';
   double b = 4.65;
   printf("Size of variable a : %d\n",sizeof(a));
   printf("Size of an expression : %d\n",sizeof(a+b));
   int s = (int)(a+b);
   printf("Size of explicitly converted expression : %d\n",sizeof(s));
   return 0;
}

ผลลัพธ์

Size of variable a : 1
Size of an expression : 8
Size of explicitly converted expression : 4