首页 > 其他分享 >结构体与共用体(二)

结构体与共用体(二)

时间:2024-08-02 23:53:19浏览次数:15  
标签:右移 兼容 枚举 按位 共用 整形 结构

接上章

尾插

头删

尾删

1.共用体

共用体的成员会公用内存空间;

结果为4,200;最后一个元素有效,共用空间,前面的会被后面的覆盖,sizeof为最大字节元素的大小。

判断大小端:

清空

3.枚举类型

所有的可能性都举出来。(与整形兼容)

enum 名字(首字母大写)

{

​        里面写所有的可能性(并不是意味着他有七个成员,而是他的取值范围必须是里面的某一个)

};

提高代码的可读性,也可以放在switch语句,他是兼容的。

枚举值的后面的值可以发生改变。

typedef 定义类型

对已有起别名

typedef  int INT(从此以后INT不再是变量名而是类型名)。

位运算(所有位运算要操作数的类型是与整形或者整形兼容,或者枚举也可以;但是指针,结构体这些都不可以,不与整形兼容)

1,按位与是指定位清0
        i&=j <=>i = i&j
2.按位或| 指定位置1
3.按位异或^,指定位反转
4.取反 单目运算 对所有的数取反
5.<<左移,左移之后,不够补0,可以实现某一位置1,i | (1<< 5)(左移永远都是左移)
6.右移>> 不够向右补0,右移分为算术右移(有符号,前面补1,也肯能补0;取决于i的正负,正补0,负的补1),逻辑右移(无符号 ,前面补0)

注意

在编程的时候注意给数据类型定义为无符号类型,使之符合我们的要求。

循环左移:

标签:右移,兼容,枚举,按位,共用,整形,结构
From: https://blog.csdn.net/2401_84308772/article/details/140867040

相关文章

  • AI全知道 - 测试人员应该了解的Embedding Model知识结构
    引言在人工智能和机器学习领域,嵌入模型(EmbeddingModel)逐渐成为不可或缺的工具。对于软件测试人员来说,了解嵌入模型的基本概念和应用场景,不仅有助于更好地理解AI系统的工作原理,还能提升在测试AI驱动应用时的有效性。本文将从嵌入模型的定义、主要应用、常见类型及具体案例......
  • Python数据结构第二天—循环链表、树、二叉搜索树
    双向链表之前学习的单向链表只能从头遍历到尾,过程是单向的,而双向链表既可以从头遍历到尾,也可以从尾遍历到头,它的过程是双向的。既然它是双向的,那么我们要实现一个双向链表,就需要在单向链表的基础上,给每一个结点增加一个向前的引用。双向链表的创建:"""我们要实现的是一......
  • 【数据结构】大根堆和小根堆
    大根堆实现逻辑从整棵树的最后一颗子树开始调整,每次都让根节点和左右孩子去比较,如果根节点比左右孩子的最大值要小,那么就将这两个值进行交换,然后此时这颗子树变成了大根堆,再看下一颗树然后对下一颗树进行相同的处理方法,后面的子树依次交换:当每棵子树都是大根堆的情况......
  • C语言自定义类型结构体与位段超详解
    文章目录1.结构体类型的声明1.1结构体声明1.2结构体变量的创建和初始化1.3结构体的特殊声明1.3结构体的自引用2.结构体内存对齐2.1对齐规则2.2为什么存在内存对齐2.3修改默认对齐数3.结构体传参4.结构体实现位段4.1什么是位段4.2位段成员的内存......
  • 共用体、typedef、位运算
    共用体定义:共用体是一个用户自定义的类型,包含多个不同类型的成员,但在同一时间只能存储其中一个成员的值。共用体的声明类似于结构体,但使用关键字union。unionExample{inti;floatf;charc;}; 内存分配:共用体的大小等于其最大成员的大小。例如,如果......
  • 链表尾插法、头删、尾删,共用体、位运算。
    一、链表1、尾插程序:2、头删3、尾删4、清空链表二、共用体1、定义:union 共用体名(首字母大写。所占字节大小:结构体变量所占内存长度是各成员占的内存长度之和。每个成员分别占有其自己的内存单元。共用体变量所占的内存长度等于最长的成员的长度。但是整体大......
  • c语言结构体的概述,定义结构体变量类型的方法,结构体变量的引用,结构体变量的初始化,结构
    1.C语言结构体的概述在C语言中,结构体(struct)是一种复合数据类型,用于将不同类型的数据组合在一起。它可以包含基本数据类型(如int、float、char等)以及其他结构体。结构体非常适合表示具有多种属性的复杂数据,如学生信息(包含姓名、年龄、成绩等)或坐标点(包含x和y坐标)。结构......
  • 【数据结构算法经典题目刨析(c语言)】判断链表是否有环(图文详解)
    ......
  • 数据结构———栈
    目录基本概念常用操作栈的实现1. 基于链表的实现2. 基于数组的实现实现之间的对比栈的典型应用基本概念栈(stack)是一种遵循先入后出逻辑的线性数据结构。我们可以将栈类比为枪械上的弹夹,如果想打出底部的子弹,则需要先将上面的子弹依次移走。我们将子弹替换为......
  • 数据结构: 单向链表
    目录一、链表的概念及结构二、单链表的实现2.1头文件2.2各个功能的实现2.2.1内存申请 2.2.2头插,尾插,头删,尾删头插 尾插 头删尾删 2.2.3查找数据 2.2.4指定位置前中后的数据增删指定位置之前插入数据指定位置之后插入数据删除指定位置之后数据删......