gpt4 book ai didi

c - 在这些声明下,以下表达式是什么类型,它们是否正确?

转载 作者:行者123 更新时间:2023-11-30 17:00:22 25 4
gpt4 key购买 nike

struct place 

{

char name[80+1];
double latitude;
double longitude;
};

struct node

{

struct place city;
struct node *next;

};

struct node *head;


head
head -> city
head -> next
head -> city -> name
head -> next ->city.name

这类任务总是让我考试丢分,有好心人解释一下吗?它询问所提到的变量是什么类型,我猜像 head 这样的东西只是指向整个结构的值 node 的指针?

最佳答案

在后面部分的稍后片段中,

head -> city -> name

是错误的,因为city不是指针类型。您需要使用点运算符 (.) 来访问非指针结构变量的成员。就像您使用它的方式

head -> next ->city.name

除此之外,从语法上来说,这些片段看起来不错。

补充一点,作为基本的理智,您应该在取消引用之前检查指针的非 NULL 性,以避免调用 undefined behavior .

关于c - 在这些声明下,以下表达式是什么类型,它们是否正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37663515/

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