龙空技术网

结构体的各种使用方法详细讲解-c\c++

C语言编程大课堂 120

前言:

此时兄弟们对“c语言结构体的使用”可能比较注重,咱们都需要知道一些“c语言结构体的使用”的相关资讯。那么小编在网上汇集了一些对于“c语言结构体的使用””的相关知识,希望各位老铁们能喜欢,姐妹们快快来学习一下吧!

结构体的各种使用方法详细讲解-c\c++

结构体

什么是结构体?

结构体就是自己自定义的一种"数据类型"

使用多个基本数据类型或者其他结构组成的一种新的"数据类型"

C语言结构体(Struct)从本质上讲是一种自定义的数据类型,只不过这种数据类型比较复杂,是由 int、char、float 等基本类型组成的。你可以认为结构体是一种聚合类型。在实际开发中,我们可以将一组类型不同的、但是用来描述同一件事物的变量放到结构体中。

为什么要使用结构体?

表示一些复杂的信息比如学生的各种"成绩","科目","姓名",游戏的的各种"金币","积分",

"宝石"

单纯用基本数据类型使用不方便,代码的灵活性很低

结构体的定义

struct 结构名 {

成员类型 成员名;

成员类型 成员名;

};

实例

struct student {

int name[16]; //姓名

int age; //年龄

int tel; //电话

};

温馨提示

各成员之间要以分号隔开;

结构体结尾要以分号结束;

结构体里包含结构体

实例

struct student {

int name[16];

int age;

int tel;

};

struct _class {

struct student xiaohua;

struct student heige;

struct student xiaohong;

};

结构体的初始化

struct student {

int name[16];

int age;

int tel;

};

方式一

struct student xiaohua = {"xiaohua",18,10086};

方式二

strcut student xiaohua ;

strcpy(xiaohua.name,"xiaohua");

xiaohua.age = 18;

xiaohua.tel = 10086;

初始化结构体中包含结构体

struct student {

int name [16];

int age;

int tel;;

};

struct _class {

struct student xiaohua;

struct student xiaohua;

struct student xiaohua;

};

struct _class n1= {

{"xiaohua",18,10086},

{"xiaohong",15,10086},

{"xiaohei",17,10086},

};

温馨提示

strcpy();在vs2019中需要添加_s,如:strcpy_s();

如果不添加会出现以下错误:

原因:

是因为vs认为函数strcpy();不安全,推荐使用vs自己的函数;

结构体的使用

c++方式:

输出结果:

C方式:

输出结果:

结构体中包含结构体:

输出结果为:

更多技术分享与交流欢迎加入C/C++学习交流群:587250700

标签: #c语言结构体的使用