代码练习——结构体_指向结构的指针

指向结构的指针
一个指针指向结构时,称为结构指针变量
结构指针变量中的值是所指向的结构变量的首地址

一般形式: struct 结构名称 * 结构指针变量名;

访问结构成员的一般形式:
(* 结构指针变量).成员名
结构指针变量 -> 成员变量名  
 

练习1、

# include<stdio.h>
# include<string.h>

struct Menpai
{
	int id; //门派的ID
	char name[50]; //门派的名称
	int count; //门派的人数
	int type;// 门派的类别——1为正牌,2为中立,3为邪派

};

struct Player
{
	int id; //玩家的id
	char name[50]; //玩家的姓名
	int login; //玩家的账号
	char pass[50]; //玩家的登录密码
	char sex; //玩家的性别
	struct Menpai menpai ; //玩家所属门派
};

int main()

{

	struct Player  player = { 1,"mamba",12456,"123",'f',{1,"洛克萨斯",500,1} };

	printf("玩家姓名:%s\n玩家所属门派名:%s\n", player.name,player.menpai.name);

	struct Player  player2 = { 2,"小飞侠",12456,"123",'f',{1,"德玛西亚",500,1} };
	struct Player *ptr_player2 = &player2;
	//使用指针访问
	printf("玩家姓名:%s\n玩家所属门派名:%s\n", (*ptr_player2).name,(*ptr_player2).menpai.name);
	printf("玩家姓名:%s\n玩家所属门派名:%s\n", ptr_player2->name,ptr_player2->menpai.name);
	
	return 0;
}


练习2:

# include<stdio.h>
# include<string.h>

struct Student
{
	int id; //学生的id
	char name [50]; //学生的姓名
	int age ; //学生的年龄
};


int main()
{
	struct  Student student; // 定义struct Student 结构类型的变量student
	struct Student *p; //定义指向struct Student 类型数据的指针变量p
	p = &student; // p指向student
	student.id = 1;
	strcpy(student.name,"zhang");
	student.age = 20;
	printf("输入的学生信息为:\n");
	printf("id:%d\tname:%s\tage:%d\n",student.id,student.name,student.age);
	printf("id:%d\tname:%s\tage:%d\n",(* p).id,(* p).name,(* p).age);
	printf("id:%d\tname:%s\tage:%d\n",p->id,p->name,p->age);

	return 0;
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值