C语言中的箭头运算符-所有您需要知道的!

时间:2020-02-23 14:31:51  来源:igfitidea点击:

在本文中,我们将重点介绍C语言中的Arrow运算符。
" C语言"由各种用于处理和操纵数据记录的运算符组成。
箭头运算符就是这样一种运算符。

在C中使用Arrow运算符?

在C语言中,此运算符使程序员能够访问结构或者联合的数据元素。

该运算符(->)是使用减号(-)运算符和大于(>)关系运算符构建的。
此外,它有助于我们访问指针变量所引用的结构或者联合的成员。

现在让我们集中讨论C语言中Arrow运算符的结构。

箭头运算符的语法(->)

看看下面的语法!

(pointer variable)->(variable) = value;
</code>

该运算符与指针变量一起使用。
即,它将值存储在指针/对象指向的位置(变量)。

现在,让我们通过接下来的部分中的一些示例来实现此运算符。

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

在下面的示例中,我们创建了一个结构" Movie_info"。
此外,我们已经使用C malloc()函数以动态方式为该结构分配了一个指针对象,并为其分配了内存。

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

#include <stdio.h>
 
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 with theitroad";
   M->ACC="A";
 
   printf("Movie Information:");
   printf("\nName: %s", M->name);
   printf("\nACC: %s", M->ACC);
   return 0;
}
</code>

我们已经使用箭头运算符(->)访问了数据成员的值。

输出:

Movie Information:
Name: Python with theitroad
ACC: A
</code>

现在让我们尝试使用箭头运算符访问Union的数据成员。
箭头运算符访问C中Union的数据成员

#include <stdio.h>
 
union Movie_info
{ 
  int id;
  float net_val;
};
 
int main()
{
   union Movie_info* M;
   M = (union Movie_info*) 
      malloc(sizeof(union Movie_info)); 
   printf("Movie Information:\n");
   M->id = 01;
   printf("\n ID: %d", M->id);
   M->net_val = 125.45;
   printf("\n NET VALUE: %.1f", M->net_val);
   return 0;
}
</code>

与"结构"一样,我们创建了一个联合" Movie_info",并使用如上所示的箭头运算符访问了数据值。

输出:

Movie Information:
ID: 1
NET VALUE: 125.4
</code>