这是我看到的一篇对于C 语言嵌套的理解
c语言中的结构可以进行嵌套,比如游戏中角色有自己的元素属性,在这些元素属性中,一些属性又有自己独立的属性,比如角色的属性元素中有自己的名称,等级,技能,血量,蓝量…,帮派,,而这些帮派又有自己的一些元素属性,比如帮派的id,名称,人数…。
#include <stdio.h>
#include <stdlib.h>
struct Martial //定义一个martial结构即帮派结构
{char name[50];//定义字符串变量name,帮派名称
int id; //定义整数型变量id,帮派的id
int people; //定义整数型变量people,帮派人数
char type[50];//定义字符串类型变量tybe,帮派的派系
};
struct Hero //定义一个Hero结构即游戏角色结构
{
char name[50];//定义字符串变量name,人物名称
int level;//定义整数型变量level,人物等级
int hp;//定义整数型变量hp,人物血量
int mp;//定义整数型变量mp,人物蓝量
char skill[50];//定义字符串变量skill,人物技能
struct Martial martial;//人物所属帮派,直接嵌套入Martial结构作为hero结构的元素
};
int main()
{
struct Hero hero={"德玛西亚之力",10,1000,200,"正义审判",{"英雄峡谷",1,100,"正义"}};//为hero结构赋值,其中{"英雄峡谷",1,100,"正义"}为直接给帮派martial结构赋值
printf("%s\t %s",hero.name,hero.martial.name);//输出测试,其中hero.name为人物名称,hero.martial.name为人物所属帮派的名称
return 0;
}