设为首页 加入收藏

TOP

C++中的自定义数据类型(结构体)解析
2014-11-24 12:54:03 来源: 作者: 【 】 浏览:0
Tags:定义 数据 类型 结构 解析

自定义数据类型


一、结构体类型


1、 C++允许用户自己定义一组包含若干个类型不同(或相同)的数据项的数据类型,称为结构体。


2、 声明符号:struct


3、 一般形式:struct 结构体类型名{成员表列};


4、 结构体类型名用来作结构体类型的标志。


5、 结构体中的每个成员也称为结构体中的一个域。成员表列又称为域表。


6、 声明结构体类型的位置一般在文件的开头,在所有函数之前。


7、 C++提供了类类型,所以在一般情况下,不必使用带函数的结构体。


二、结构体类型变量的定义方法及其初始化


1、 定义结构体类型变量的方法:


a) 先声明结构体类型再定义变量名


结构体类型名 结构体变量名


Student student1;


C语言中结构体类型名前面加上关键字struct


C++中可以省略


Student1中具有Student中同样的属性


b) 在声明类型的同时定义变量


一般形式:


struct 结构体名



成员表列


}变量名表列;


c) 直接定义结构体类型变量


一般形式:


struct //没有结构体类型名



成员表列


}变量名表列;


这种方式虽然合法,但很少使用。提倡先定义类型后定义变量的第一种方法.



说明:


1、 不是所有的结构体类型都有相同的结构。


2、 类型与变量是不同的概念,只能对结构体变量中的成员赋值,不能对结构体类型赋值。在编译时,不会对类型分配空间,只为变量分配空间。


3、 结构体中的成员可以单独使用,它的作用与地位相当于普通变量。


4、 成员也可以是一个结构体变量。


5、 #include


6、 usingnamespace std;


7、


8、 struct Date //声明一个结构体类型Date


9、 {


10、 int month;


11、 int day;


12、 int year;


13、 };


14、 struct Student //声明一个结构体类型Student


15、 {


16、 int num;


17、 char name[20];


18、 char sex;


19、 int age;


20、 Datebirthday; //Date是结构体类型,birthdayDate类型的成员


21、 char addr[30];


22、 }student1={},student2;//定义student1student2为结构体类型Student的变量


首先声明了一个Date类型,具有三个成员month,day,year。然后声明Student类型,将成员birthday指定为Date类型,即birthday作为Date结构体类型名的结构体变量,具有month,day,year三个属性。


5、结构体中的成员名可以与程序中的变量名相同,但二者没有关系,互不影响。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C++指向结构体变量的指针与链表结.. 下一篇C++字符数组函数深度剖析

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·哈希表 - 菜鸟教程 (2025-12-24 20:18:55)
·MySQL存储引擎InnoDB (2025-12-24 20:18:53)
·索引堆及其优化 - 菜 (2025-12-24 20:18:50)
·Shell 中各种括号的 (2025-12-24 19:50:39)
·Shell 变量 - 菜鸟教 (2025-12-24 19:50:37)