一、枚举
1.枚举是用户定义的一种数据类型,它用关键字enum以以下方式来进行声明;
enum 枚举类型名字 {名字0,名字1…名字n};
2.我们通常所用的是打括号里面的文字,他们本身就代表一种数字,是常量符号,数据类型是int,如:
enum color{red,yellow,blue}; enum color t = red;
就创建了三个常量,其中red = 0;yellow = 1;blue = 2;
并使用enum color数据类型定义了t = red;
3. enum 枚举类型名字 是一种数据类型,如同 int,double 等等;而枚举量就是里面的名字可以作为数字使用;
4. 同时里面的名字可以自己给他们数值,不一定非得让他们按照默认顺序来,其后面没有给数值一次比前面的值大一。
二、结构
1.为什么使用结构
明确数据关系、简化对数据块的操作、简化参数列表、减少维护;
2.定义:

```cpp<    struct date//声明1{int year;int month;int day;}p1,p2;p1.p2都是date,也相当于today;struct date//声明2{int year;int month;int day;};
定义;struct date today             `
引用:today.year;today.month;today.day;
赋值;          today = (struct date){1,2,3};类型强制转换。
这些引用的东西可以直接作为变量使用,与int n中的n没有任何区别>

3.与本地变量一样,在函数内部声明只能在函数内部使用,因此我们通常在函数外部对结构进行声明,使其可以被多个函数使用;
4.其与数组不一样的是,
它可以赋值,例如;p1 = p2。
结构变量名字并不是结构变量的地址,这跟数组是不同的,若要引用地址,则必须使用&符号;
可以使用p->month 来表示p指向结构里面的month,里面的p指的是结构名称的地址,是指针,*p.month = p->month;
5.结构数组 struct date today[100];
struct date today[] = {{1,2,3},{1,2,3}};方括号里面默认是2;
6.镶嵌结构

声明
struct point
{int x;int y;
};
struct rct
{struct point p1;//前面的是数据类型,后面的是结构名称struct point p2;
}struct rct r ;//定义
r = (struct rct)//赋值,类型强制转换
{{1,2},{3,4}
};

枚举及其结构的相关知识点相关推荐

  1. C语言中结构体、联合(union)、枚举(enum)相关知识点

    一.结构 结构是一种由程序员自己设计的数据类型,用于描述一个事物的各项特征数据,由若干个类型不同的基础类型组成 设计: struct 结构类型名 { 类型 成员名1; 类型 成员名2; ... }; ...

  2. Swift 系统学习 22 分析错误的三个阶段 (枚举和结构体相关)

    //: Playground - noun: a place where people can playimport UIKit/** 本节主要内容:* 1.分析错误处理的三个阶段* 2.三个阶段整合 ...

  3. Linux安装和管理程序的相关知识点

    Linux安装和管理程序的相关知识点 一.Linux应用程序基础 1.应用程序与系统命令的关系 2.典型的应用程序结构 3.常见软件包封装类型 二.RPM软件包管理工具 1.RPM包管理工具 2.RP ...

  4. STM32编程中枚举和结构体的结合

    01.结构体定义 基本定义:结构体,通俗讲就像是打包封装,把一些有共同特征(比如同属于某一类事物的属性,往往是某种业务相关属性的聚合)的变量封装在内部,通过一定方法访问修改内部变量. 结构体的定义: ...

  5. labview csv文件处理_LabVIEW 相关知识点分类汇总

    题图照片:Photo by Pixabay from Pexels 为了在知乎和小伙伴们一起更好进行LabVIEW相关知识与技术的讨论,特此制作了本知识点分类汇总供大家参考,分类采用先分块后分层的分而 ...

  6. html属性 id去重,JS相关知识点总结

    一.获取元素方法 1.document.getElementById("元素id号"); 可以使用内置对象document上的getElementById方法来获取页面上设置了id ...

  7. 三极管相关知识点释疑(一)

    最近找工作找的郁闷,感觉走了一条不归路... 主要介绍下三极管相关的知识点,还有一些相关的总结. 1.二极管 介绍三极管之前肯定要先了解下二极管. 1.1 基本结构 PN 结加上管壳和引线,就成为半导 ...

  8. VSLAM 相关知识点总结

    VSLAM 相关知识点 这篇文章是对VSLAM涉及的知识点进行系统性的总结和更新,一些内容来源至VSLAM经典教材,博客,和开源项目(引用材料如下表) SLAM十四讲高博 古月老师的技术博客 崔神的g ...

  9. NISP一级考试相关知识点

    NISP一级不难,你报名交完钱买了那个相关课程之后就刷题就行. 相关知识点: 1.信息:信息就是数据或事件 2.信息安全: 内因:内因方面主要是信息系统复杂性导致漏洞的存在不可避免,换句话说,漏洞是一 ...

最新文章

  1. 网页设计风格变化的一点共性
  2. mybatis缓存机制
  3. Qt基于文本协议的网络应用开发
  4. 提高 服务器 内存 利用率_怎样提高AI服务器的利用率
  5. 【译】Angular 开发44条“军规”
  6. Django从理论到实战(part8)--URL中添加参数
  7. php获取其他php文件变量值,php 引入其他文件中的变量
  8. win8配置mysql5.6,win8.1(64位) apache2.4.3+php5.6.3+mysql5.6安装
  9. nacicat for mysql查询_navicat for mysql怎么用
  10. java 实现内存数据表_数据结构 Java中的内存
  11. Hello Dojo!(翻译)
  12. 03 ZooKeeper底层原理剖析与命令实战
  13. vue非父子组件间传参问题
  14. AES-128\192\256加密算法及其安全脆弱分析
  15. 在vue项目中使用 JSON 编辑器: vue-json-editor
  16. 史上最全高级Java教程总结版(强烈建议收藏)
  17. MATLAB拟合优度检验
  18. 黑苹果声音低、有杂音、爆音解决方案
  19. win8计算机修改密码,win8系统怎么设置开机密码
  20. easyui php分页,jQuery EasyUI 教程-Pagination(分页)

热门文章

  1. 问题 c: SOLDIERS
  2. Conv Nets: A Modular Perspective
  3. mcc460_MCC(移动国家码)和 MNC(移动网络码)
  4. Linux如何用查看域名解析
  5. “个人效率”与“组织效率”
  6. 计算机信息系统安全保护等级划分准则
  7. Python:航空公司客户价值分析实战
  8. java缓存Guava Cache用法介绍
  9. 基线_XRD、XPS扣基线教程(基于Originlab)
  10. 基于逻辑回归,支持向量机,朴素贝叶斯以及简单深度学习文本分类方法(BiLSTM、CNN)实现的中文情感分析,含数据集可直接运行