您的位置:首页 > 编程语言 > C语言/C++

C++ 用户自定义数据类型

2018-02-24 11:09 323 查看
结构体类型:

在一个组合项中包含若干个类型不同的数据项,C++允许指定这样一种数据类型,称它为结构体。

声明结构体的格式:

struct 结构体类型名

{

成员表

};

struct Student
{
int num; //包含一个整数变量
char name[20]; //包含一个字符数组
int age; //包含整形变量age
char sex; //包含字符变量
float score; //包含单精度型变量
char addr[30];// 字数数组
};


Student 就是一个新的结构体

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

1. 先定义一个结构体Student

Student stu1, stu2;

与类的用法一致

2.在声明类型的同时定义变量 :

struct Student

{

int num; //包含一个整数变量

char name[20]; //包含一个字符数组

int age; //包含整形变量age

char sex; //包含字符变量

float score; //包含单精度型变量

char addr[30];// 字数数组

}student1,student2; //注意分号在外面

3.也可直接定义结构体类型变量

struct

{

成员表

}变量名;

虽然可以,但是很少使用;

推荐使用第一种方法

结构体的成员也可以是一个结构体变量

结构体的是初始化:

//第一种初始化方法
struct Student
{
int num; //包含一个整数变量
char name[20]; //包含一个字符数组
int age; //包含整形变量age
char sex; //包含字符变量
float score; //包含单精度型变量
char addr[30];// 字数数组
}student ={101."zhangsan",19,'M',90.5,"ShangHai"};
//第二种初始化方法
struct Student
{
int num; //包含一个整数变量
char name[20]; //包含一个字符数组
int age; //包含整形变量age
char sex; //包含字符变量
float score; //包含单精度型变量
char addr[30];// 字数数组
};
Student student ={101."zhangsan",19,'M',90.5,"ShangHai"};


(1)一个结构体的变量的值可以赋给另一个具有相同类型的得变量

(2)可以引用结构体中的一个成员的值:

结构体变量名.成员名

student.num=101;

如果成员本事也是一个结构体那就是逐级引用

(3)不能将一个 结构体整体进行输入输出

(4)可以引用结构体变量成员的地址,也可以也用结构体变量的地址

(5)结构体数组:

struct Student

{

int num; //包含一个整数变量

char name[20]; //包含一个字符数组

int age; //包含整形变量age

char sex; //包含字符变量

float score; //包含单精度型变量

char addr[30];// 字数数组

}stu[3];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: