Toán tử sizeof là toán tử phổ biến nhất trong C. Đây là toán tử một ngôi thời gian biên dịch và được sử dụng để tính toán kích thước của toán hạng của nó. Nó trả về kích thước của một biến. Nó có thể được áp dụng cho bất kỳ biến kiểu dữ liệu, kiểu float, kiểu con trỏ nào.
Khi sizeof () được sử dụng với các kiểu dữ liệu, nó chỉ trả về lượng bộ nhớ được cấp cho kiểu dữ liệu đó. Đầu ra có thể khác nhau trên các máy khác nhau như hệ thống 32 bit có thể hiển thị đầu ra khác nhau trong khi hệ thống 64 bit có thể hiển thị các kiểu dữ liệu giống nhau.
Đây là một ví dụ bằng ngôn ngữ C,
Ví dụ
#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; }
Đầu ra
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
Khi sizeof () được sử dụng với một biểu thức, nó sẽ trả về kích thước của biểu thức. Đây là một ví dụ.
Ví dụ
#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; }
Đầu ra
Size of variable a : 1 Size of an expression : 8 Size of explicitly converted expression : 4