访问结构属性

问题描述

我正在尝试了解->运算符。这是一些示例代码的示例,以了解其工作原理:

typedef struct Book {
    char* title;
    unsigned int year;
} Book;

int main(int argc,char * argv[])
{

    Book hamlet;
    hamlet.title = "The Tragedy of Hamlet,Prince of Denmark";
    hamlet.year = 1603;
    print_book(hamlet);

    Book *copyOfHamlet = &hamlet;
    printf("I have a copy of the book: %s.\n",copyOfHamlet->title);
}

我有一本书的副本:丹麦王子哈姆雷特的悲剧

从上面看来,它的作用是:

  1. 给出一个指向结构的指针,它将解析该属性。换句话说,->将对结构的指针执行操作,而成员访问器.对结构本身进行的操作。

  2. 这是一种简便的方法

    (*copyOfHamlet).title;
    

->是一种方便的方法,可以直接从内存地址访问属性吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)