gpt4 book ai didi

c - 结构指针操作

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

使用的代码

#include<stdio.h>

struct st
{
char a;
short c;
int b;
};

struct st s1;
int main()
{
printf("%p %p \n",(&s1.b)-1, &s1);
}

如果我打印 &s1.b 的地址,它打印 0x804a01c&s1.b-2 打印 0x804a018如果我选择 &s1.b-1 为什么会打印相同的地址 0x804a01c

最佳答案

您的打印代码可能有问题。

#include <stdio.h>

struct st
{
char a;
short c;
int b;
};

struct st s1;

int main() {
printf("%p\n", (void*)(&s1.b));
printf("%p\n", (void*)(&s1.b - 1));
printf("%p\n", (void*)(&s1.b - 2));
}

输出:

0x403024
0x403020
0x40301c

关于c - 结构指针操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2033915/

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