小编Vah*_*yab的帖子

为什么指针值不等于它指向的结构体的地址?

这是我用来学习指向结构体工作方式的代码。正如你在下面看到的,变量的值s不等于它指向的结构体的地址(&amity),奇怪的 *s是等于它。

我还有一些问题:

为什么所有结构实例(甚至&instance.name)的地址都相同?

虽然sij相同,但为什么 的值*j*s*i

最后,为什么结构体的值仅等于其第一个字段的值?

该代码是从《Head First C》一书中修改而来的。

#include <stdio.h>

typedef struct island {
    char *name;
    char *open;
    char *close;
    struct island *next;
} island;

void text(island *s);

int main(void) {

    island amity = { "Amity", "09:00", "17:00", NULL };
    island craggy = { "Craggy", "09:00", "17:00", NULL };
    island isla_nublar = { "Isla Nublar", "09:00", "17:00", NULL }; …
Run Code Online (Sandbox Code Playgroud)

c struct pointers linked-list

0
推荐指数
1
解决办法
97
查看次数

标签 统计

c ×1

linked-list ×1

pointers ×1

struct ×1