C语言 sizeof

sizeof 是一个关键字,它是一个编译时运算符,用于判断变量或数据类型的字节大小。sizeof 运算符可用于获取类、结构、共用体和其他用户自定义数据类型的大小。

sizeof具有如下特性:

  • sizeof是编译器的内置指示符
  • sizeof用于计算类型或者变量所占用内存大小
  • sizeof的值在编译期就已经确定

sizeof用法

sizeof用于类型:

sizeof(type);

sizeof用于变量:

sizeof(var);
sizeof var; // 由此可知,sizeof并不是函数

示例:

int var = 0;
printf("%d\n", sizeof(int));
printf("%d\n", sizeof(var));
printf("%d\n", sizeof var);

sizeof关键字

sizeof是C语言的内置关键字而不是内置函数

  • 在编译过程中所有的sizeof将被具体的数值所替换
  • 程序的执行过程与sizeof没有任何关系

下面的程序输出什么?

int var = 0;
int size = sizeof(var++);
printf("var = %d, size = %d \n", var, size);

sizeof使用示例

#include <stdio.h>

int f()
{
    printf("Deepinout.com\n");

    return 0;
}

int main()
{
    int var = 0;

    int size = sizeof(var++);// 并不会执行var++!!!!!!!!!!!

    printf("var = %d, size = %d\n", var, size);

    size = sizeof(f());

    printf("size = %d\n", size);

    return 0;
}

运行结果:

C语言sizeof用法

赞(1)
未经允许不得转载:极客笔记 » C语言 sizeof
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址