指针本身的大小在一台机器上是固定的吧?如在32位计算机上,指针的大小就是32位长度,即4个字节

如果跟我有相同的疑惑,不要怀疑,在下认为是这个道理。在一个特定的机器上,指针的大小是固定的,并且与机器的架构有关。在32位计算机上,指针的大小通常是32位,即4个字节,因为指针需要足够的大小来存储内存地址。在64位计算机上,指针的大小通常是64位,即8个字节,因为64位系统有更大的地址空间,所以需要更大的指针来寻址。
指针的大小与它指向的数据类型无关,而是与操作系统的地址宽度有关。无论指针指向的是整数、浮点数、字符还是其他任何类型的数据,指针本身的大小都是一样的。
在C语言中,可以使用 sizeof 运算符来获取指针的大小。例如:

#include <stdio.h>
int main() {
    int *ptr;
    printf("Size of pointer: %zu bytes\n", sizeof(ptr));
    return 0;
}

在32位计算机上,上述代码将输出 Size of pointer: 4 bytes,而在64位计算机上,它将输出 Size of pointer: 8 bytes

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

九层指针

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值