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是一个指针变量

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

相关推荐
汉克老师12 小时前
GESP6级C++考试语法知识(十七、数据结构(三、认识队列 Queue))
数据结构·c++·队列·gesp6级·gesp六级·数组模拟队列
笨拙的老猴子13 小时前
[特殊字符] Java GC机制详解:G1、ZGC、Shenandoah全面解析与版本演进对比
java·开发语言
水木流年追梦13 小时前
大模型入门-Reward 奖励模型训练
开发语言·python·算法·leetcode·正则表达式
JavaWeb学起来13 小时前
Python学习教程(六)数据结构List(列表)
数据结构·python·python基础·python教程
电子云与长程纠缠13 小时前
UE5制作六边形包裹球体效果
开发语言·python·ue5
枕星而眠13 小时前
Linux 四大进程/线程同步锁详解:互斥锁、读写锁、条件变量、文件锁
linux·c语言·后端·ubuntu·学习方法
砍材农夫13 小时前
物联网 基于netty构建mqtt协议规范(遗嘱与保留消息)
java·开发语言·物联网·netty
froginwe1113 小时前
Python3 迭代器与生成器
开发语言
xiaoshuaishuai814 小时前
C# 签名异常与Gas预估失败调试方案
开发语言·网络·tcp/ip·c#
xiaoshuaishuai814 小时前
C# Gemini 辅助网络安全漏洞分析
开发语言·web安全·c#