C语言 - sizeof()

C语言 - sizeof() 首页 / C语言入门教程 / C语言 - sizeof()

sizeof()运算符通常在C语言中使用。它确定表达式的大小或在char型存储单元数中指定的数据类型。 sizeof()运算符包含一个操作数,它可以是表达式或数据类型转换,其中强制类型转换是括在括号内的数据类型。

sizeof()运算符

主要是程序知道原始数据类型的存储大小。尽管数据类型的存储大小是恒定的,但在不同平台上实现时,它会有所不同。例如,我们使用 sizeof()运算符动态分配数组空间:

int *ptr=malloc(10*sizeof(int));

在上面的示例中,我们使用了sizeof()运算符,该运算符应用于int类型的转换。我们使用 malloc()函数分配内存,并返回指向该已分配内存的指针。内存空间等于int数据类型占用的字节数并乘以10。

sizeof()运算符的行为根据操作数的类型而有所不同。

  • 操作数是数据类型
  • 操作数是表达式

当操作数是数据类型时。

#include <stdio.h>
int main()
{
    int x=89;   //变量声明。
    printf("size of the variable x is %d", sizeof(x)); // 显示 ?x变量 的大小.
    printf("\nsize of the integer data type is %d",sizeof(int)); //显示 int 数据类型的大小.
    printf("\nsize of the character data type is %d",sizeof(char)); //显示 char 数据类型的大小 

    printf("\nsize of the floating data type is %d",sizeof(float)); //显示 float 数据类型的大小 
return 0; }

在上面的代码中,我们借助于 sizeof()运算符来打印不同数据类型(例如int,char,float)的大小。

sizeof() operator in C

当操作数是表达式时

#include <stdio.h>
int main()
{
  double i=78.0; //变量初始化。
  float j=6.78; 
  printf("size of (i+j) expression is : %d",sizeof(i+j)); //显示表达式的大小 (i+j)。
  return 0;
}

在上面的代码中,我们分别创建了两个类型为double和float的变量'i'和'j',然后使用 sizeof(i + j)运算符打印表达式的大小。

size of (i+j) expression is : 8

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

从0开始学架构 -〔李运华〕

Node.js开发实战 -〔杨浩〕

说透中台 -〔王健〕

小马哥讲Spring AOP编程思想 -〔小马哥〕

陶辉的网络协议集训班02期 -〔陶辉〕

讲好故事 -〔涵柏〕

手把手带你搭建秒杀系统 -〔佘志东〕

网络排查案例课 -〔杨胜辉〕

现代C++20实战高手课 -〔卢誉声〕

好记忆不如烂笔头。留下您的足迹吧 :)