C语言 sizeof

2025年02月23日 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;
}

运行结果:

本文链接:http://so.lmcjl.com/news/23747/

展开阅读全文
上一篇:C语言 枚举enum 下一篇:mongodb如何删除表