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

相关推荐
l1t1 小时前
利用美团龙猫用libxml2编写XML转CSV文件C程序
xml·c语言·libxml2·解析器
Hello_Embed2 小时前
STM32HAL 快速入门(二十):UART 中断改进 —— 环形缓冲区解决数据丢失
笔记·stm32·单片机·学习·嵌入式软件
咸甜适中2 小时前
rust语言 (1.88) 学习笔记:客户端和服务器端同在一个项目中
笔记·学习·rust
Magnetic_h3 小时前
【iOS】设计模式复习
笔记·学习·ios·设计模式·objective-c·cocoa
研梦非凡4 小时前
ICCV 2025|从粗到细:用于高效3D高斯溅射的可学习离散小波变换
人工智能·深度学习·学习·3d
limengshi1383925 小时前
机器学习面试:请介绍几种常用的学习率衰减方式
人工智能·学习·机器学习
知识分享小能手5 小时前
React学习教程,从入门到精通,React 组件核心语法知识点详解(类组件体系)(19)
前端·javascript·vue.js·学习·react.js·react·anti-design-vue
周周记笔记6 小时前
学习笔记:第一个Python程序
笔记·学习
优雅鹅7 小时前
ARM、AArch64、amd64、x86_64、x86有什么区别?
arm开发·学习
..过云雨7 小时前
05.【Linux系统编程】进程(冯诺依曼体系结构、进程概念、进程状态(注意僵尸和孤儿)、进程优先级、进程切换和调度)
linux·笔记·学习