gpt4 book ai didi

c - 为什么从地址中减去指针值会导致指针值的间隙为指针值的 8 倍?

转载 作者:太空宇宙 更新时间:2023-11-04 07:25:14 25 4
gpt4 key购买 nike

<分区>

在以下代码段中,指针地址和值被引用为类型 size_t。然而正如标题所说,最后的减法对我来说没有意义。它的作用就像减去乘以 8 的数字而不是 int 数组 中看到的实际值。

#include <stdio.h>
#include <stdint.h>

int main()
{
int i[6] = {2, 0, 1, 0, 20, 24};

void *ptr = &i[2];

printf("%zu\n", ((size_t*)ptr));
printf("%zu\n", *((size_t*)ptr));
printf("%zu\n", ((size_t*)ptr) - *((size_t*)ptr));
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com