C语言:符号“->”在C语言中什么意思呢?

在这里插入图片描述

1.C语言中符号“->”的意义:

‌指针中的->表示用于访问指针所指向的结构体或联合体的成员。‌ 这是一个操作符,通常用于简化代码,可以替代使用(*ptr).member的方式。

->操作符的具体用法是,当你有一个指向结构体的指针时,可以使用->操作符直接访问该结构体的成员。例如,如果有一个指向结构体的指针ptr,结构体中有一个成员变量member,你可以使用ptr->member来访问这个成员变量‌。

2.代码实例体会:

代码片段一:

#include <stdio.h>

struct Point {
    
    
    int x;
    int y;
};

int main() {
    
    
    struct Point points[] = {
    
    {
    
    1, 2}, {
    
    3, 4}, {
    
    5, 6}};
    struct Point *ptr = points;  // 指针指向结构体数组的第一个元素

    printf("初始点: (%d, %d)\n", ptr->x, ptr->y);  // 输出 (1, 2)

    ptr++;  // 递增指针,使其指向下一个结构体
    printf("递增后点: (%d, %d)\n", ptr->x, ptr->y);  // 输出 (3, 4)

    return 0;
}

当上面的代码被编译和执行时,它会产生下列结果:

初始点: (1, 2)
递增后点: (3, 4)

代码片段二:

/*定义结构体*/
struct  Data
{
    
    
int a,b,c;
}; 

struct Data * p;/*定义结构体指针*/

struct Data A = {
    
    1,2,3};/*声明变量A*/

int x;/*声明一个变量x*/

p = &A ;  /*让p指向A*/

x = p- > a;   /*这句话的意思就是 取出p所指向的结构体中包含的数据项a 赋值给x*/

/*由于此时p指向 A,因而 p->a  == A.a , 也就是1*/

->操作符相当于结构体类型数据成员访问方法的语法糖

猜你喜欢

转载自blog.csdn.net/qq_44776454/article/details/143000146