C语言struct和union结合使用,空间最小

原创 2012年03月22日 17:41:01
struct StUserData 
{
	unsigned userdata1 : 1;		// 0--		1--
	unsigned userdata2 : 2;		// 0--    1--    2--   3--
	unsigned userdata3 : 3;
	unsigned userdata4 : 4;

	unsigned normaldata1 : 1;
	unsigned normaldata2 : 2;
	unsigned normaldata3 : 3;
	unsigned normaldata4 : 4;

	unsigned otherdata1 : 3;
	unsigned otherdata2 : 3;
	unsigned otherdata3 : 3;
	unsigned otherdata4 : 3;
};

union UnUserData
{
	StUserData info;
	UINT32 data;
};

int _tmain(int argc, _TCHAR* argv[])
{
	UnUserData data;
	memset(&(data.info), 0, sizeof(data.info));

	data.info.userdata1 = 1;
	data.info.userdata2 = 3;
	data.info.userdata3 = 5;
	data.info.userdata4 = 7;

	data.info.normaldata1 = 0;
	data.info.normaldata2 = 3;
	data.info.normaldata3 = 5;
	data.info.normaldata4 = 7;

	data.info.otherdata1 = 0;
	data.info.otherdata2 = 2;
	data.info.otherdata3 = 4;
	data.info.otherdata4 = 6;

	UnUserData data2;
	data2.data = data.data;
	return 0;
}

OLED屏幕和Rpi

为了之后做甲醛探测买了一块显示频:SSD1331。结果买回来不会接线。下面这个链接非常好用,最赞的是那个网页上代码SSD1331.py, 基本改一下针脚,就妥妥的了。注意,这次的针脚不是物理数针啦: ...

联合体+位域,实现位操作,并可以整体读出

传统的位域,可以方便的实现位操作,但是需要对结构体整体读出时比较麻烦。如果有些场合需要对位进行操作,又有把结构体整体读出需求时,往往让人不知所措,这事可以用联合体+结构体(位域)的方法实现。 位域的...
  • daxus
  • daxus
  • 2013年01月04日 12:46
  • 3508

C_C语言的enum、struct、union的使用详解

OK今天我们讲解C语言的三个特殊

c语言中的结构(struct)和联合(union)简介

联 合(union)  1. 联合说明和联合变量定义  联合也是一种新的数据类型, 它是一种特殊形式的变量。  联合说明和联合变量定义与结构十分相似。其形式为:  union 联合名{  数...
  • xjbclz
  • xjbclz
  • 2016年07月04日 22:22
  • 3325

C语言sizeof(struct)与sizeof(union)

点击打开链接

c语言的union和struct

什么是union(联合体)? union(联合体):union是一个能在同一个存储空间(但不同时)存储不同类型数据的数据类型。 例如: union test1 { char a; ...

C语言中的sizeof(struct )和sizeof(union)

一般32位机上各数据类型所占存储空间为: char : 8位 short : 16位 int : 32位 long : 32位 float : 32位 double : 64位 一、结构体stru...

C语言的struct/union字节对齐详解

        C 语言的一大优势就是对内存空间的控制,当然,在面向对象语言的压力下,程序员更喜欢轻松的语言,不喜欢自己还要顾虑内存空间。        可是,C 语言仍然有很强的生命力,尤其是在操作...

C语言中的struct、union、enum、Typedef

一、typedef的用法 转载地址: http://www.2cto.com/kf/201404/296683.html typedef可以看...

[精华] c语言中的结构(struct)和联合(union)简介

http://www.chinaunix.net/old_jh/23/179471.html [精华] c语言中的结构(struct)和联合(union)简介 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言struct和union结合使用,空间最小
举报原因:
原因补充:

(最多只允许输入30个字)