gpt4 book ai didi

c - '- 使用了 >' operator in C and how it'

转载 作者:行者123 更新时间:2023-12-04 11:19:24 24 4
gpt4 key购买 nike

编辑 - 更新为 2 星指针以获得更多相关性

假设我有一个双星指针指向一个结构,该结构也包含一个指针。

typedef struct{
nodeT *ptr;
}nodeT;

nodeT example;
nodeT *test1 = &example;
nodeT *test = &test1;

如果我想要结构中指针的地址,语法是什么?我试过这个:

&(*test->ptr)

有人认为括号会简化为实际指针,之后使用 & 运算符返回地址。

相反,我通过反复试验发现这是正确的语法:

&(*test)->ptr;

此外,我很困惑为什么下面的语法甚至无法将 test 指针取消引用到结构指针:

*test->ptr;

根据我的经验,如果 *test 周围没有括号,编译器会返回一条语句,通知我我正在尝试访问不属于结构或 union 的内容。

这一定与分配给各种我不完全了解的格式元素的优先级有关。

有什么想法吗?

最佳答案

test->ptr(*test).ptr

相同

所以,我认为您需要 &(test->ptr)(我不确定哪个运算符具有更高的优先级)。

关于c - '- 使用了 >' operator in C and how it',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19665247/

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