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

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

相关推荐
_Chipen22 分钟前
3363. 最多可收集的水果数目
数据结构·算法
绿炮火32 分钟前
【MATLAB】(十)符号运算
开发语言·matlab
俄城杜小帅1 小时前
QML与C++交互的方式
开发语言·c++·交互
Asu52022 小时前
思途spring学习0807
java·开发语言·spring boot·学习
zhang1062092 小时前
PDF注释的加载和保存的实现
java·开发语言·pdf·pdfbox·批注
VBA63372 小时前
VBA之Word应用第四章第一节:段落集合Paragraphs对象(一)
开发语言
我是不会赢的3 小时前
使用 decimal 包解决 go float 浮点数运算失真
开发语言·后端·golang·浮点数
胤祥矢量商铺3 小时前
菜鸟笔记007 [...c(e), ...d(i)]数组的新用法
c语言·开发语言·javascript·笔记·illustrator插件
青红光硫化黑3 小时前
学习bug
开发语言·javascript·ecmascript
泽虞3 小时前
C语言深度语法掌握笔记:底层机制,高级概念
java·c语言·笔记