首页 > 其他分享 >位段,枚举,联合(共用体)

位段,枚举,联合(共用体)

时间:2023-07-02 13:00:46浏览次数:38  
标签:A1 字节 二进制位 位段 int 枚举 共用

一、位段

1.位段简介

位段,枚举,联合(共用体)_枚举

2.位段形式

struct A {
	int a : 3;
	int b : 4;
	int c : 10;
	int d : 30;
}A1;

与结构体类似,区别在于位段把结构体的 “=” 换为 “:”, “:”之后的数字代表该变量占用的二进制位数(位段中的位即二进制位)

3.位段的大小

int main() {
	printf("%d", sizeof(A1)); //8
	return 0;
}

本应占47个比特位,但由于int型的位段以4个字节开辟空间,所以最终大小为8字节

4.位段的内存分配

位段,枚举,联合(共用体)_位段_02

为什么在一个字节内从高地址向低地址分配?(a在b的左边)

(1)与字节序无关,字节序是在一个数据内字节之间的排列顺序,而不是字节本身内部的比特位排列顺序

(2)与编译器的种类有关

5.位段的跨平台问题

位段,枚举,联合(共用体)_枚举_03

6.位段的应用

在数据网络传输时,对数据包进行压缩

位段,枚举,联合(共用体)_位段_04

二、枚举

标签:A1,字节,二进制位,位段,int,枚举,共用
From: https://blog.51cto.com/u_16102535/6604522

相关文章

  • 将MembershipCreateStatus枚举成员翻译成自定义信息
    publicstaticclassAccountValidation{publicstaticstringErrorCodeToString(MembershipCreateStatuscreateStatus){switch(createStatus){caseMembershipCreateStatus.DuplicateUserName:......
  • 10.12 枚举应用案例
    demoenumSex{ //性别 MALE("男"),FEMALE("女"); //枚举对象 privateStringtitle; //成员属性 privateSex(Stringtitle){ //构造方法 this.title=title; } @Override publicStringtoString(){ //获取对象信息......
  • 10.11 定义枚举结构
    demo1在枚举类中定义成员属性与方法enumColor{ //枚举类 RED("红色"),GREEN("绿色"),BLUE("蓝色"); //枚举对象要写在首行 privateStringtitle;//成员属性 privateColor(Stringtitle){//构造方法初始化属性; this.title=title; } @Override publicStrin......
  • 10.9 枚举类
    枚举是对多例模式的一种扩充,完善,简化。demo1基本定义enumColor{ //枚举类 RED,GREEN,BLUE //实例化对象,这里的值可以用中文}publicclassJavaDemo{ publicstaticvoidmain(Stringargs[]){ Colorc=Color.RED;//获取实例化对象 System.out.println(c)......
  • Java基础复习——枚举类
    枚举类假设要创建一个季节(Season)对象classSeason{privateStringname;privateStringdesc;//描述 //构造器//get//...}思考?季节只有四个,是固定的四个对象创建的Season对象有如下特点季节是有限的四个值只读,不需要修改代码实现如下:public......
  • EasyExcel validator校验 及自定义 枚举校验
    需要校验的实体importcom.alibaba.excel.annotation.ExcelIgnore;importcom.alibaba.excel.annotation.ExcelProperty;importcom.alibaba.excel.annotation.write.style.ColumnWidth;importcom.ruoyi.system.domain.enums.RoleStatusEnum;importcom.ruoyi.system.domain......
  • C#枚举系统安装的所有打印机
    在下面的程序中我们将把系统中所安装的打印机用列表框列出来,同时为默认打印机设置缺省值。在下面的程序中我们用到了两个主要的类,把所有的打印机列表出来用到了PrinterSettings类,获取系统默认打印机用到了PrintDocument类,下面我们就动手实践一下吧。先新建一个window......
  • 共用体类型
    不同的变量共享同一个内存的结构,就叫“共用体”类型 //union共用体名{// 成员编列// }变量表列;//方法1 unionStudent{ intyear; charname[20]; }a,b,c;//方法2 unionStudent{ intyear; charname[20]; }; unionStudenta,b,c;//方法3 union{ intyear; char......
  • 枚举活动目录的常见技术
    凭证注入在进入AD对象和枚举之前,让我们先了解凭据注入方法。从活动目录的渗透中,会看到通常可以在不损害加入域的计算机的情况下找到凭据。特定的枚举技术可能需要特定的设置才能工作。runas如果有AD凭据无处可登录,那么Windows自带的runas命令将会很有用,我们可以使用合法的W......
  • 05-枚举和共用体
    目录一.枚举1.1枚举的定义和优点二.联合体(共用体)2.1联合体定义2.2共用体内存大小计算一.枚举1.1枚举的定义和优点枚举定义的值是常量,可以被初始化一次,如果没有手动初始化,系统会将第一个常量自动初始化为0,往后每个常量在前一个基础上+1枚举对比宏定义更加......