C语言结构体中位域(位段)的使用

简介: #include #include struct bit { char i1:1; char i2:1; char i3:1; char i4:1; char i5:1; char i6:1; char i7:1; ch...
#include <stdio.h>
#include <stdlib.h>


struct bit
{
char i1:1;
char i2:1;
char i3:1;
char i4:1;
char i5:1;
char i6:1;
char i7:1;
char i8:1;
};


int main()
{
    char x=1;
    struct bit *pb=(struct bit*)&x;  
    pb->i5=1;
      printf("%d\n",x);
      system("pause");
          return 0;
}
目录
相关文章
|
17天前
|
C语言
C语言结构体内存对齐
C语言结构体内存对齐
|
1月前
|
存储 编译器 C语言
C语言位域
C语言位域
10 0
|
20天前
|
存储 编译器 Linux
【C语言】自定义类型:结构体深入解析(二)结构体内存对齐&&宏offsetof计算偏移量&&结构体传参
【C语言】自定义类型:结构体深入解析(二)结构体内存对齐&&宏offsetof计算偏移量&&结构体传参
|
17天前
|
存储 C语言
C语言自定义类型结构体详解
在C语言中,结构体是复合数据类型,能组合不同类型的数据显示。定义结构体用`struct`关键字,如`struct Student {char name[20]; int age; float score;};`。声明结构体变量如`struct Student stu1;`,访问成员用`.`操作符,如`stu1.age = 20;`。初始化可直接赋值`struct Student stu1 = {&quot;李四&quot;, 22, 85.5};`。结构体数组如`struct Student stuArray[3]`,结构体指针如`struct Student *pStu = &stu1;`。
5 0
|
20天前
|
存储 搜索推荐 编译器
【C语言】一篇文章深入解析联合体和枚举且和结构体的区别
【C语言】一篇文章深入解析联合体和枚举且和结构体的区别
|
20天前
|
存储 网络协议 编译器
【C语言】自定义类型:结构体深入解析(三)结构体实现位段最终篇
【C语言】自定义类型:结构体深入解析(三)结构体实现位段最终篇
|
28天前
|
存储 编译器 C语言
【C语言】结构体的大小是如何计算的?(结构体对齐)
【C语言】结构体的大小是如何计算的?(结构体对齐)
27 0
|
1月前
|
存储 网络协议 编译器
C语言第三十一弹---自定义类型:结构体(下)
C语言第三十一弹---自定义类型:结构体(下)
|
1月前
|
存储 程序员 C语言
C语言中的结构体数组
C语言中的结构体数组
9 0