C语言,数据结构指针,结构构体操作符 •,->,*的区别,看这篇就够了

在朋友们学习指针和数据结构这一章的时候,对各种操作符云里雾里。当你看到这么文章之后你就会明白了。

一 • 和 ->运算符

• 运算符:是结构变量访问结构体成员时用的操作符

-> 运算符:这是结构体指针访问结构体成员时调用的运算符。

如 我们给一个例子

cpp 复制代码
typedf struct{
    //三个结构体成员
    char username[20];
    int    age;
    char    key[30];
    
}userdata;             //给这个结构体取别名

userdata data;        //定义结构体变量
userdata *pdata;      //定义结构体指针
    

那么我们如何通过结构体变量,和结构体指针取访问结构体成员呢

结构体变量用 • 操作符访问结构体成员。

结构体指针用 -> 操作符访问结构体成员;

cpp 复制代码
data.username = hello;

data->age      = 19;

二. *操作符

int *p和int* p的区别

int *p:的意思是解引用操作符,通过地址找到地址所指的对象

如 *p=20;是通过p所指的地址,取改变他的值

int *p = &20; 这里指的是p指针指向20这个元素的地址

int* p;是说明 p是一个指针变量

好了这就这篇文章的主要内容

相关推荐
海南java第二人2 小时前
SpringBoot启动流程深度解析:从入口到容器就绪的完整机制
java·开发语言
星火开发设计2 小时前
C++ queue 全面解析与实战指南
java·开发语言·数据结构·c++·学习·知识·队列
橘颂TA2 小时前
【剑斩OFFER】算法的暴力美学——力扣 394 题:字符串解码
数据结构·c++·结构与算法
DICOM医学影像2 小时前
2. go语言从零实现以太坊客户端-查询区块链账户余额
开发语言·golang·区块链·以太坊·web3.0·hardhat
Data_agent2 小时前
Python 编程实战:函数与模块化编程及内置模块探索
开发语言·python
new_zhou2 小时前
vs2019+qt工程中生成dump文件及调试
开发语言·qt·visual studio·dump调试
栈与堆3 小时前
LeetCode 19 - 删除链表的倒数第N个节点
java·开发语言·数据结构·python·算法·leetcode·链表
一路向北·重庆分伦3 小时前
03-01:MQ常见问题梳理
java·开发语言
txinyu的博客3 小时前
结合游戏场景理解,互斥锁,读写锁,自旋锁,CAS / 原子变量,分段锁
开发语言·c++·游戏
阿里嘎多学长3 小时前
2026-01-11 GitHub 热点项目精选
开发语言·程序员·github·代码托管