C 语言中,结构体「.」与「->」的区别

简单来说 「 」的左边是结构体名字时用点符号「.」

「 」的左边是结构体指针时名字时用箭头「->」

对于要读取结构体种的数据时,有下面三种写法,操作是等价的。

c 复制代码
	struct ListNode a;
    struct ListNode *p1 = &a;

    /*三种写法*/
    a.element = 2333;
    p1->element = 666;
    (*p1).element = 888;

参考阅读

  1. 结构体指针:一、结构体指针;二:结构体数组与结构体数组指针;三、结构体作为函数参数与结构体数组指针作为函数参数的优点 -CSDN

    http://t.csdnimg.cn/A81z4

  2. C 语言中,「.」与「->」有什么区别? - 知乎

    https://www.zhihu.com/question/49164544

相关推荐
华清远见成都中心16 分钟前
分享一个驱动开发工程师学习路线图
驱动开发·学习
im_AMBER33 分钟前
React 18
前端·javascript·笔记·学习·react.js·前端框架
是苏浙2 小时前
零基础入门C语言之C语言实现数据结构之单链表经典算法
c语言·开发语言·数据结构·算法
d111111111d3 小时前
STM32中为什么会有APB1和APB2两个外设有什么区别
笔记·stm32·单片机·嵌入式硬件·学习
化作星辰3 小时前
深度学习_神经网络中最常用的学习率优化算法
深度学习·神经网络·学习
71-34 小时前
C语言练习题——判断水仙花数(0-100000)
c语言·笔记·学习
FAREWELL000754 小时前
Lua学习记录(3) --- Lua中的复杂数据类型_table
开发语言·学习·lua
Broken Arrows4 小时前
排查网络问题的一些工具的作用和常用使用方法
linux·网络·学习
jzhwolp4 小时前
从基本链表到侵入式链表,体会内核设计思路
c语言·后端·设计模式
biter down5 小时前
c语言18:结构体位段联合体
c语言·开发语言