使用 C++ 实现您自己的 sizeof 运算符


有一种选择,我们可以实现我们自己的 sizeof() 运算符。sizeof() 运算符是一个一元运算符,用于计算任何类型数据的长度。我们可以使用 #define 指令来实现我们自己的 sizeof() 运算符,它的工作方式与 sizeof() 运算符完全相同。

以下是如何实现自己的 sizeof() 运算符的语法,

#define Any_name(object) (char *)(&object+1) - (char *)(&object)

其中,

任何名称 - 您想给自己 sizeof() 运算符的名称。

以下是一个在 C 语言中实现 sizeof() 运算符的示例,

示例

 实时演示

#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));

更新于: 2020-06-26

735 次浏览

开启你的 职业生涯

完成课程获得认证

开始
广告