C语言运算符中箭头是什么意思啊
->在C语言中,叫做指向结构体成员运算符,用处是使用一个指向结构体或对象的指针访问其内成员。
一个指针当用来指向一个结构体、对象时,称之为结构体指针或对象指针。结构体指针或对象指针中的值是所指向的结构体或对象的首地址。通过结构体指针或对象指针即可访问该结构体或对象。
指向结构体成员运算符需要用到结构体关键字struct和C++类关键字class。结构体指针和对象指针定义的形式如下:
1、struct 结构体类型名 *指针名;
2、struct 结构体类型名 *指针名 = &一个结构体的名字。
扩展资料:
C语言中访问结构体成员时 点 . 和 箭头 -> 的区别
点(.)是用于结构体变量访问成员,箭头(->)是用于结构体指针访问成员。
相同点:两个都是二元操作符,其右操作符是成员的名称。
不同点:点操作符左边的操作数是一个“结果为结构”的表达式; 箭头操作符左边的操作数是一个指向结构的指针。
参考资料来源:百度百科——“->”
表示成员选择(指针),选择结构体的成员变量。
1、结构:运算符 -> 是指向结构体成员运算符,结合方向为自左向右。
2、用法:对象指针->成员名。
举例说明如下:
扩展资料:
C语言指针的必要性。
指针解决了一些编程中基本的问题:
1、指针的使用使得不同区域的代码可以轻易的共享内存数据。当然也可以通过数据的复制达到相同的效果,但是这样往往效率不太好,因为诸如结构体等大型数据,占用的字节数多,复制很消耗性能。
但使用指针就可以很好的避免这个问题,因为任何类型的指针占用的字节数都是一样的(根据平台不同,有4字节或者8字节或者其他可能)。
2、指针使得一些复杂的链接性的数据结构的构建成为可能,比如链表,链式二叉树等等。
3、有些操作必须使用指针。如操作申请的堆内存。还有:C语言中的一切函数调用中,值传递都是“按值传递”的,如果要在函数中修改被传递过来的对象,就必须通过这个对象的指针来完成。
参考资料:
运算符 -> 是指向结构体成员运算符,结合方向为自左向右。
举例说明如下:
#include<stdio.h>
// 结构体的声明与定义
struct
{
char name[10];
int age;
char sex;
}person;
void main()
{
int i;
// 此处就是指向结构体成员运算符(->)的用法
i = person->age; // 提取结构体成员变量age的值,并赋值给变量i
}
用法:对象指针->成员名