用户自定义的数据类型

结构体定义 :struct 结构体名 {结构体成员列表}

结构体变量创建:(这里的struct可以省略)

1.struct 结构体名 变量名

2.struct 结构体名 变量名 = {成员1值,成员2值}

3.定义结构体时顺便创建变量

例子,(1)创建学生数据类型(姓名,年龄,分数)

sturct student                   //可理解为一个子函数

{

string name;

int age;

int score;

}s3;                //顺便创建变量

(2)通过学生类型创建具体学生

1.struct 结构体名 变量名

struct student s1;

s1.name = "张三";            //给s1属性赋值,通过 . 访问结构体变量中的属性

s1.age = 16;

s1.score = 13;

2.struct 结构体名 变量名 = {成员1值,成员2值}

struct student s1 = {"赵大",14,67};

3.定义结构体时顺便创建变量

s3在结构体后面

s3.name = "张水电费";            //给s1属性赋值,通过 . 访问结构体变量中的属性

s3.age = 19;

s3.score = 153;

struct student
{string name;int age;int score;
}s3;int main()
{struct student s1;s1.name = "唐颐和";s1.age = 15;s1.score = 56;cout << s1.name << s1.age << s1.score << endl;struct student s2 = { "丽莎",18,78 };cout << s2.name << s2.age << s2.score << endl;s3.name = "阿刁和";s3.age = 115;s3.score = 546;cout << s3.name << s3.age << s3.score << endl;system("pause");return 0;
}

2,结构体数组

struct 结构体名 数组名[元素个数] = {{},{},.......}

1.定义结构体

sturct student

{

string name;

int age;

int score;

}

2,创造结构体数组

struct student stuarry[3] =            //还是个一维数组,里面是根据结构体赋值

{

{"张",19,67},                              //这里是直接给所有赋值

{"李",15,97},                              //数组是加逗号

{"王",17,53}

}

3.也可以单独每个赋值

stuarry[2].name = "李";

stuarry[2].age = 18;

stuarry[2].score = 66;

4.遍历结构体数组

for(i=0;i<3;i++)

{

cout << stuarry[i].name << ;

}

完整代码

struct student
{string name;int age;int score;
}s3;int main()
{struct student stuarry[3] =          //这里定义的是数组里数的总个数,所有定义的书的个数必 须小于等于这个值{                                    //这里直接赋值的有两个,下面再定义的有一个,所以为3{"张",16,66},{"李",16,35},};stuarry[2].name = "阿萨德";            //如果这里不赋值,输出的结果为00,字符为空stuarry[2].age = 33;  stuarry[2].score = 89;for (int i = 0; i < 3; i++){cout << stuarry[i].name  << stuarry[i].age << stuarry[i].score << endl;}system("pause");return 0;
}

c++ day 4 结构体定义,结构体数组相关推荐

  1. C# 结构体定义 转换字节数组 z

    客户端采用C++开发,服务端采用C#开发,所以双方必须保证各自定义结构体成员类型和长度一致才能保证报文解析的正确性. [StructLayoutAttribute(LayoutKind.Sequent ...

  2. C++结构之定义结构

    此篇文章根据<C++程序设计基础(第5版)(上)>整理,为本书的各位编辑者的辛勤劳动成果,本人仅为其搬运简述. 定义结构 结构类型以关键字struct标识,由结构类型名.各成员的名称和类型 ...

  3. C/C++中struct结构体定义变量的3种方法及初始化

    本博客整理自http://blog.csdn.net/zunfo/article/details/51494631 1.struct结构体定义 1.1.先定义结构体,然后再定义结构体变量 struct ...

  4. 【C语言】结构体定义 typedef struct 用法详解和用法小结

    结构体定义 typedef struct 用法详解和用法小结 文章目录 结构体定义 typedef struct 用法详解和用法小结 0. 前言 1. 首先:在C中定义一个结构体类型要用typedef ...

  5. 对C语言 结构体 和 结构变量

    一.结构体/结构的引入 在学生的登录记录表中,姓名应该为字符型.学号可以为整形或字符型,年龄应该为整形,性别应该为字符型,成绩可以整形或实型.显然不能用一个数组来存放这一组数据,因为数组各元素的类型和 ...

  6. 结构体与共用体(联合体)

    参考:结构体与共用体 作者:一只青木呀 发布时间: 2020-08-09 08:29:22 网址:https://blog.csdn.net/weixin_45309916/article/detai ...

  7. C语言集锦 | 03 - C语言的复合数据类型(typedef关键字、结构体、枚举体、共用体)

    文档版本 更新时间 更新内容 v1.0 2020-09-14 初稿完成 文章目录 一.typedef关键词 二.结构体(重点) 1. 为什么需要结构体 2. 什么是结构体 3. 如何定义结构体 4. ...

  8. C语言入门系列之10.结构体和共用体

    文章目录 一.结构体变量的基本使用 1.概述 2.定义结构体类型变量的方法 3.结构体变量的引用 4.结构体变量的初始化 二.结构体的高级应用 1.结构体数组 Ⅰ定义结构体数组 Ⅱ结构体数组的初始化 ...

  9. C语言-结构体与共用体

    int 4字节:char 1字节:short 2字节:float 4字节: 1字节bytes=8位bits(2^8): struct date {int month;int day;int year; ...

  10. 江哥带你玩转C语言 | 14 - 结构体-枚举-共用体

    什么是结构体 结构体和数组一样属于构造类型 数组是用于保存一组相同类型数据的, 而结构体是用于保存一组不同类型数组的 例如,在学生登记表中,姓名应为字符型;学号可为整型或字符型;年龄应为整型;性别应为 ...

最新文章

  1. Conda安装Glossary词汇表
  2. no output in console for unittests in pycharm 2017
  3. 设计模式(10)-装饰模式详解(易懂)
  4. arrays中copyof_为什么阿里巴巴开发手册明确说明 Arrays.asList() 不能使用其修改方法?...
  5. 尚硅谷SpringCloud(H版alibaba)框架开发教程(大牛讲授spring cloud) 最详细的。
  6. 网络安全:与 TCP 连接管理相关的网络攻击
  7. Hibernate 持久化状态、HQL语句大全(转)
  8. java面试设计模式
  9. 计算机的指令合成为,第二章计算机操作基础知识doc
  10. 拉普拉斯算子属于卷积方法吗_二维图像中的Laplace算子和图论中的Laplacian矩阵...
  11. 打docker镜像_分分钟搞定阿里云私有Docke镜像仓库的搭建
  12. 在R中创建晶须和盒图
  13. iBatis.Net系列(五)-providers.config-
  14. 计算机网络基础知识整理
  15. 自定义MySQL实用的函数和存储过程(持续更新)
  16. uniapp 压缩图片(微信小程序)
  17. python 分析泰坦尼克号生还率_如何用Python分析泰坦尼克号生还率?
  18. 大数据的流处理和批处理及其框架
  19. 软路由系统, OpenWrt (Lede), Ubuntu server, 爱快, ROS, Pfsense, m0n0wall, OPNsense
  20. android组件悬浮,Andorid 任意界面悬浮窗,实现悬浮窗如此简单

热门文章

  1. android笔试汇总
  2. 华硕索尼联想戴尔等笔记本U盘重装win7系统出现蓝屏0X0000007B的解决方法
  3. mysql新建连接1045_Navicat for Mysql 1045错误
  4. 钉钉消息防撤回功能研究与实现-可查看历史消息[文件/图文/管理员/链接 撤回拦截]
  5. SSD安装ubuntu系统的优化
  6. (六)工控机显示方式设置
  7. 移动端芯片综合性能排行榜
  8. 华为WATCH 3和GT3运动手表该如何选?哪个更适合自己
  9. 【VBA研究】关于单元格颜色值的十六进制赋值
  10. Jobbox.io(职位盒子): 新兴的面向技术人才的职场招聘众推平台