我们可以选择实现自己的sizeof()
运算符。该运算符sizeof()
是一元运算符,用于计算任何类型的数据的大小。我们可以使用#define指令来实现我们自己的sizeof()
运算符,该运算符将与sizeof()
运算符完全相同。
这是实现自己的sizeof()
运算符的语法,
#define Any_name(object) (char *)(&object+1) - (char *)(&object)
这里,
Any_name-您想要给自己的sizeof()
运算符的名称。
这是一个sizeof()
用C语言实现运算符的示例,
#include <stdio.h> #define to_find_size(object) (char *)(&object+1) - (char *)(&object) int main() { int x; char a[50]; printf("Integer size : %d\n", to_find_size(x)); printf("Character size : %d\n", to_find_size(a)); return 0; }
输出结果
Integer size : 4 Character size : 50
在上面的程序中,#define指令用于声明我们自己的sizeof()
运算符,它正在计算整数和字符类型数组的大小。
#define to_find_size(object) (char *)(&object+1) - (char *)(&object) …. int x; char a[50]; printf("Integer size : %d\n", to_find_size(x)); printf("Character size : %d\n", to_find_size(a));