- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章数组与结构-2剖析
4.6 结构体
结构体用一个名称来表示一个拥有多个元素的连续存储区域,与数组不同的是,结构体中的元素可以是不同的数据类型。
结构体
struct person
{
char name[8];
unsigned int age;
char sex;
float height;
} p;
0 1 2 3 4 5 6 7
name
age
sex
height
7
6
5
4
3
2
1
0
p.name
p.age
p.sex
p.height
p
注意编译系统在元素组织上的差别! 这里以VC为例。
4.6 结构体
格式:struct 结构类型名 {成员列表};
说明:定义结构体类型名称及其内部数据成员组成
定义结构体类型
struct person
{
char fstname[10];
char lstname[10];
unsigned int age;
char sex;
float height;
float weight;
};
0 1 2 3 4 5 6 7 8 9
4.6 结构体
格式:struct 结构类型名 变量名
说明:定义结构体变量,结构类型需事先定义
定义结构体变量
struct person
{
char first_name[10];
char last_name[10];
unsigned int age;
char sex;
float height;
float weight;
};
struct person p1;
p1
4.6 结构体
定义结构体类型时直接定义出结构体变量。
struct 结构体类型名 {成员列表} 变量列表;
结构体定义的变形
struct person
{
char first_name[10];
char last_name[10];
unsigned int age;
char sex;
float height;
float weight;
} p1;
p1
4.6 结构体
无结构体类型名。
struct {成员列表} 变量列表;
结构体定义的变形
struct
{
char first_name[10];
char last_name[10];
unsigned int age;
char sex;
float height;
float weight;
} p1;
p1
4.6 结构体
定义结构体变量并给该变量中的各成员赋初值,格式与数组赋初值相似,但要注意各成员的位置次序和数据类型。
结构体变量的初始化
struct person
{
char first_name[10];
char last_name[10];
unsigned int age;
char sex;
float height;
float weight;
} p1 = {Tom,Cruze,34,M,1.88,81.5};
4.6 结构体
结构体变量成员的引用
格式:结构体变量名.成员
struct person
{
char name[8];
unsigned int age;
char sex;
float height;
} p;
strcpy(p.name,”于小谦”);
p.age = 27;
p.sex = ‘M’;
p.height = 1.78;
printf(“his name:%s”,p.name);
if(p.sex==‘M’) puts(“男”);
4.6 结构体
结构体变量成员的赋值
格式:结构体变量名1 = 结构体变量名2
功能:将结构变量2的成员的值复制给结构变量1
struct person
{
char name[8];
unsigned int age;
char sex;
float height;
} p1 = {“刘军”,27,’M’,1.75};
struct person p2;
p2 = p1;
赋值后p2的内容跟p1是完全一样的!
4.6 结构体
结构体的嵌套
结构体中的成员是结构体变量
struct person
{
char name[8];
unsigned int age;
char sex;
struct date birthday;
float height;
} p1;
struct date
{
int year;
int month;
int day;
};
您可能关注的文档
最近下载
- 合作协议书(15篇)(模板) .pdf VIP
- 《电动汽车充电站设计规范》GB50966-2014(完整).docx VIP
- 网御星云网闸技术宝典.pdf VIP
- 江淮CPC(D)20-30-CPC(D)30A叉车零件图册.pdf VIP
- DB32T 3610.2-2025 道路运输车辆智能监控系统技术规范 第2部分:终端及测试方法.docx VIP
- 驾驶员的夜间行车视觉与夜间驾驶技巧.pptx VIP
- 中医临床三基(医师)临床基本知识针灸推拿考试真题.docx VIP
- GB50156-2012(2014年版) 汽车加油加气站设计与施工规范.pdf VIP
- 临近既有地铁的异形深基坑支护设计与施工.pdf VIP
- 《葡萄沟》精品课件.pptx VIP
文档评论(0)