如何取出结构体中的成员

// 如何去除结构体中的成员.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <stdio.h>

struct Student 
{
	float score;
	int age;
};

int main(void)
{
	Student st;
	Student *pst = &st; 
	st.score = 100;//第一种方法,结构体变量名.成员名
	pst->age = 100;//第二种方法,指向结构体的指针变量名->成员名,这种方式使用的比较多
	/******************************************************
	*在系统中,会把pst->age转换成(*pst).age,等价于st.age
	******************************************************/
	(*pst).age = 101;

	printf("%f,%d\n", pst->score, st.age);

	return 0;
}

结构体是一种自定义的数据类型,它可以包含多个不同类型的成员变量。如果你想根据数字取结构体的内容,可以使用数组或者switch语句来实现。 一种常见的方法是使用数组,将结构体对象存储在数组,然后通过索引来获取对应的结构体内容。例如,假设有一个结构体定义如下: ```c typedef struct { int id; char name[20]; int age; } Person; ``` 你可以创建一个Person类型的数组,并根据数字取出对应的结构体内容,示例代码如下: ```c Person people; // 创建一个包含3个Person结构体对象的数组 // 给结构体对象赋值 people.id = 1; strcpy(people.name, "Alice"); people.age = 25; people.id = 2; strcpy(people.name, "Bob"); people.age = 30; people.id = 3; strcpy(people.name, "Charlie"); people.age = 35; int index = 1; // 要获取结构体在数组的索引 printf("ID: %d, Name: %s, Age: %d\n", people[index].id, people[index].name, people[index].age); ``` 另一种方法是使用switch语句,根据数字选择对应的结构体内容。示例代码如下: ```c Person person; // 创建一个Person结构体对象 int choice = 2; // 要选择的结构体内容的数字 switch (choice) { case 1: person.id = 1; strcpy(person.name, "Alice"); person.age = 25; break; case 2: person.id = 2; strcpy(person.name, "Bob"); person.age = 30; break; case 3: person.id = 3; strcpy(person.name, "Charlie"); person.age = 35; break; default: printf("Invalid choice!\n"); } printf("ID: %d, Name: %s, Age: %d\n", person.id, person.name, person.age); ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值