各位好听众!于这篇文章里, 我们要着重去介绍C语言当中的箭头运算符。C语言涵盖各类运算符用以处理以及操作数据记录, 其中的一个便是箭头运算符。

那么,让我们开始吧!

C中的箭头运算符的工作原理是什么?

在C语言当中, 通过这个运算符, 使运用程序的那个人有此能, 此能力为去对结构体或者联合体的数据元素实施访问。

c语言可以做网站吗

这个用于访问指针变量所引用的结构体或联合体成员的操作符(->), 是借助减号(-)操作符以及大于(>)关系操作符构建而成的。

现在让我们专注于C语言中的箭头操作符结构。

箭头操作符(->)的语法结构

请看下面的语法!

(指针变量)->(变量) =;

c语言可以做网站吗

运算符和指针变量一道运用这个情况时呢, 它会把指针或者对象所指向的那个位置, 也就是变量的值给储存起来。

让我们通过即将展示的一些例子来实施这个操作符。

箭头运算符(->)的示例

于下述示例里头, 我们构建了一个名为””的结构体, 另外, 我们借助C之中的()函数为该结构体赋予了内存, 并且把指针对象对准了这块动态内存。

c语言可以做网站吗

使用箭头运算符访问C结构体的数据成员

#include 
 
struct Movie_info
{ 
    char *name; 
    char *ACC; 
};
 
int main()
{
     struct Movie_info* M;
     M = (struct Movie_info*) 
        malloc(sizeof(struct Movie_info)); 
     
     M->name = "Python与JournalDev";
     M->ACC="A";
 
     printf("电影信息:");
     printf("\n名称: %s", M->name);
     printf("\n分级: %s", M->ACC);
     return 0;
}

我们使用箭头操作符(->)来访问数据成员的值。

输出:

电影信息
名称 Python与JournalDev
分级 A

c语言可以做网站吗

要尝试利用箭头运算符去访问联合的数据成员, 此刻就开始。在C语言里, 使用箭头运算符来对联合的数据成员进行访问。

#include 
 
union Movie_info
{ 
    int id;
    float net_val;
};
 
int main()
{
     union Movie_info* M;
     M = (union Movie_info*) 
        malloc(sizeof(union Movie_info)); 
     printf("电影信息:\n");
     M->id = 01;
     printf("\n ID: %d", M->id);
     M->net_val = 125.45;
     printf("\n 净值: %.1f", M->net_val);
     return 0;
}

如同结构体那般, 我们构建了一个称作“”的联合体, 通过箭头运算符达成数据值的访问之举, 恰如上之所示呀。

输出:

电影信息
ID 1
净值 125.4

结论

c语言可以做网站吗

截至此刻, 我们已然终结了此话题, 要是你碰到任何问题, 可随时于下方评论。

参考资料