嘿,伙计们!在本文中,我们将重点介绍C语言中的Arrow运算符,它由各种运算符组成,用于处理和操作数据记录。一个这样的运算符是箭头运算符。
那么,让我们开始吧!
Arrow操作符在C中的工作方式?
在C语言中,该操作符使程序员能够访问社区或Union的数据元素。
这个运算符(->)
是使用一个减(-)运算符和一个大于(>)关系运算符构建的。此外,它帮助我们访问指针变量引用的结构或联合的成员。
现在让我们来关注一下C语言中箭头运算符的结构。
箭头运算符的语法(->)
来看看下面的语法吧!
1(pointer variable)->(variable) = value;
运算符与指针variable.]一起使用也就是说,它将值存储在指针/对象指向的位置(变量)。
现在,让我们通过下一节中的一些示例来实现该操作符。
箭头操作符示例(->)
在下面的示例中,我们创建了一个结构‘Movie_Info’。此外,我们为该结构分配了一个指针对象,并使用C Malloc()function.以动态方式为其分配了内存
箭头运算符访问C结构的数据成员
1#include <stdio.h>
2
3struct Movie_info
4{
5 char *name;
6 char *ACC;
7};
8
9int main()
10{
11 struct Movie_info* M;
12 M = (struct Movie_info*)
13 malloc(sizeof(struct Movie_info));
14
15 M->name = "Python with JournalDev";
16 M->ACC="A";
17
18 printf("Movie Information:");
19 printf("\nName: %s", M->name);
20 printf("\nACC: %s", M->ACC);
21 return 0;
22}
我们已经使用箭头操作符(->)访问了数据成员的值。
输出:
1Movie Information:
2Name: Python with JournalDev
3ACC: A
现在让我们尝试使用箭头操作符访问Union的数据成员。C++中访问Union数据成员的箭头运算符
1#include <stdio.h>
2
3union Movie_info
4{
5 int id;
6 float net_val;
7};
8
9int main()
10{
11 union Movie_info* M;
12 M = (union Movie_info*)
13 malloc(sizeof(union Movie_info));
14 printf("Movie Information:\n");
15 M->id = 01;
16 printf("\n ID: %d", M->id);
17 M->net_val = 125.45;
18 printf("\n NET VALUE: %.1f", M->net_val);
19 return 0;
20}
与Structure类似,我们创建了一个Union‘Movie_Info’,并使用箭头操作符访问了数据值,如下所示。
输出:
1Movie Information:
2ID: 1
3NET VALUE: 125.4
结论
到这里,我们已经到了这个话题的结尾,所以随时在下面发表评论,以防你遇到任何问题。
参考文献
- C--StackOverFlow中的箭头运算符