结构体 结构时一种构造数据类型,由若干数据项组合而成
1 //结构体 结构时一种构造数据类型,由若干数据项组合而成 2 3 //1.结构定义并不预留内存 2.结构定义一般放在程序的开始部分(头文件声名之后) 4 //3.结构定义仅用来描述结构的形式,使用结构需要声名结构变量 5 6 7 #include<stdio.h> 8 #include<stdlib.h> 9 #include<string.h> 10 11 //结构体 1,2 12 struct Hero 13 { 14 int id; //英雄的id 15 char name[50]; //英雄的名称 16 int level; //英雄的等级 17 int hp; //英雄的血量 18 int mp; //英雄的魔法值 19 char skill[50]; //英雄的技能 20 } ; 21 22 23 //指针结构体 3 24 struct HeroA 25 { 26 int id; //英雄的id 27 char * name; //英雄的名称 28 int level; //英雄的等级 29 int hp; //英雄的血量 30 int mp; //英雄的魔法值 31 char skill[50]; //英雄的技能 32 } ; 33 34 35 int main() 36 { 37 //使用结构体 1 38 39 struct Hero hero1; 40 hero1.id = 1; 41 strcpy(hero1.name,"盖伦"); 42 hero1.level = 16; 43 hero1.hp = 500; 44 hero1.mp = 100; 45 strcpy(hero1.skill,"转圈圈"); 46 printf("%d\t%s\t%d\t%d\t%d\t%s\n",hero1.id,hero1.name,hero1.level,hero1.hp,hero1.mp,hero1.skill); 47 48 49 //2 50 struct Hero hero2 ={2,"亚索",10,1000,200,"哈瑟i给"}; 51 printf("%d\t%s\t%d\t%d\t%d\t%s\n",hero2.id,hero2.name,hero2.level,hero2.hp,hero2.mp,hero2.skill); 52 53 54 55 //3 指针 56 struct HeroA hero3 ={3,"瑞文",14,1000,200,"断剑之翼"}; 57 printf("请输入英雄的名称:"); 58 hero3.name=(char*)malloc(50); 59 scanf("%s",hero3.name); 60 printf("%d\t%s\t%d\t%d\t%d\t%s\n",hero3.id,hero3.name,hero3.level,hero3.hp,hero3.mp,hero3.skill); 61 62 63 return 0; 64 }
本文来自博客园,作者:Bytezero!,转载请注明原文链接:https://www.cnblogs.com/Bytezero/p/15072621.html