C++结构体的定义和基本使用
使用结构体之前声明一个结构体类型
注意:在主函数外进行声明!
struct TypName//结构体名称按照规定定义
{
//Members
}
其中struct是关键字,TypName为新类型的名称,Members则是一系列成员变量
1.TypName的命名规则:和变量名的规则一样。
2.成员变量可以普通的变量/数组定义。
比如说工厂里职工的信息(ID,姓名,手机号)
struct information
{
int ID;
char name[20]; //定义了字符数组最后要补上头文件string
char phone[20];
}; //“;"不能漏掉Codeblocks17.12版本会自动添加
比如
ID:2019215000 姓名:小晗 手机号:13198271414
导入以上数据即可
#include <iostream>
#include <string>
using namespace std;
struct information
{
int id;
char name[20];
char phone[20];
};
int main()
{
information worker; //用information类型定义worker
cin>>worker.id;
cin>>worker.name;
cin>>worker.phone;
//也可以放到一个语句
//cin>>worker.phone>>worker.name>>worker.phone;
}
cout<<worker.phone<<worker.name<<worker.phone;
总的来说运用结构体我们就可以清晰,直观 ,方便的输入、输出。
-------------------------------分割线---------------------------
- 2020.2.25更新内容
V1.0.1
ts:编译器用的是Codeblocks17.12版本,若有不对的地方请大佬指正。
使用不同方法定义结构体
(1) 声明类型之后声明变量(个人比较习惯的一种 特点:较为灵活)
struct employee
{
char name [ 10 ] ;
long code ;
double salary ;
char address [ 50 ] ;
char phone [ 20 ] ;
} ;
employee worker1, worker2, *Emp ;//定义后直接声明变量
(2) 声明类型的同时声明变量
#include <iostream>
#include <string>
using namespace std;
struct employee
{
char name [ 10 ] ;
long code ;
double salary ;
char address [ 50 ] ;
char phone [ 20 ] ;
} //这里不能有“ ; ”
worker1, worker2, *Emp ; //可以在这先定义几个,在主函数里你可以继续定义
int main()
{
employee worker3; //在这里我们定义了worker3,编译器是不会报错的
cin>>worker3.code;
cin>>worker3.name;
cin>>worker3.phone;
}
(3) 直接声明结构类型变量(尽量不要用,个人感觉哈~~)
struct //他,不配拥有名字!(嘿嘿)
{
char name [ 10 ] ;
long code ;
double salary ;
c