最冤枉的关键字----sizeof

本文详细解析了C/C++中sizeof运算符的使用方法及其特点,通过具体的代码示例展示了不同情境下sizeof运算符如何计算变量及数组的大小,并解释了指针与数组在使用中的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

sizeof 是关键字不是函数,就是计算变量所占空间大小。

 

sizeof(int)*p 表示什么意思?

看下面程序分析:

#include <stdio.h>
#include <stdlib.h>
void fun(int b[100])
{
 printf("b = %d\n",sizeof(b));// sizeof (b) 的值是多少?
 //传递一维数组 传过来的是数组名 是个地址
}
int main(void)
{
 int *p = NULL;
 printf("p = %d\n",sizeof(p)); //p为指针存放地址为4字节
 printf("*p = %d\n",sizeof(*p));//*p是一个int型变量为4字节
 int a[100];
 printf("a = %d\n",sizeof(a)); //a是数组的首元素为数组名400个字节
 printf("a[100] = %d\n",sizeof(a[100]));//a[100]是一个int类型为4字节
 printf("&a = %d\n",sizeof(&a));   //地址都是4字节
 printf("&a[0] = %d\n",sizeof(&a[0]));//首地址为4字节
 int b[100];
 fun(b);
 return 0;
}

 

打印出:

p = 4
*p = 4
a = 400
a[100] = 4
&a = 4
&a[0] = 4
b = 4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值