c语言中的箭头运算符和点运算符有啥区别
5个回答
展开全部
C语言有一种数据类型叫结构体,其定义格式为:
struct 结构体名 {
结构体成员变量定义;
};
如:
struct student {
char name[20];
int age ;
double score ;
};
用结构体定义的变量叫结构体变量,如:
struct student stu; //定义一个结构体变量stu
这种变量在引用结构体成员时,使用点(.)来操作,如:
strcpy( stu.name, "zhangsan" );
stu.age=20;
stu.score=100;
结构体类型也可以定义指针变量,如:
struct student *pstu; //定义一个结构体指针变量pstu
pstu=&stu ; //pstu指针指向stu结构体变量
结构体指针变量在引用成员变量时,使用箭头(->)来操作,如:
strcpy( pstu->name, "zhangsan" );
pstu->age=20;
pstu->score=100;
以上这两种符号的使用是C语言的规定!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
简单点说,要访问结构体成员,如果是结构体指针,则用箭头运算符访问,如果是结构体变量,则用点运算符
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
箭头作用于结构指针,点作用于结构本身
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
比如一个结构体
struct Node
{
int x;
int *y;
};
在main函数中
int main
{
Node node1;
node1.x = 5;
node->y = 5; // 用箭头访问指针变量
return 0;
}
struct Node
{
int x;
int *y;
};
在main函数中
int main
{
Node node1;
node1.x = 5;
node->y = 5; // 用箭头访问指针变量
return 0;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询