C语言——共用体

struct demo

{

int a;

char b;

short c;

}

计算机早期的时候能否尽量节省空间?

共用体技术:

可以让多个变量共用同一块内存空间

语法:

union 共用体名

{

成员列表;

}

用共同体判断本台电脑大小端:

#include<stdio.h>
union demo
{
	
	int a;
	char b;
	short c;

};
int islittleEndian(void)
{
	union 
	{
		int a;
		char b;
	}d={1};

	return d.b ;

}
int main(void)
{
#if 0
	printf("sizeof(union demo)=%ld\n",sizeof(union demo));
	union demo d={0x12345678};
	printf("d.a=%#x\n",d.a);
	printf("s.b=%#x\n",d.b);
	printf("d.c=%#x\n",d.c);
#endif
	printf("%d\n",islittleEndian());
	return 0;
}

返回值是1——。数据的最低有效字节存储在最低的内存地址上,该电脑是小端。

注意:

  1.共用体初始化时,只能给一个值,这个值默认时给到第一个成员的 
  2.共用体空间中数据,取决最后一次给到值 
    赋值的时候,每个成员只能影响,自己对应的字节
  3.共用体类型
    可以定义变量
    可以定义数组
    可以定义指针 
    可以做函数参数 和 返回值 

4.使用共用体可以节省空间。

相关推荐

  1. C语言——共用

    2024-06-09 17:34:06       20 阅读
  2. 共用类型--c语言

    2024-06-09 17:34:06       34 阅读
  3. C语言共用union

    2024-06-09 17:34:06       21 阅读
  4. C语言共用和枚举

    2024-06-09 17:34:06       22 阅读
  5. C语言中的Union(共用

    2024-06-09 17:34:06       51 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-09 17:34:06       5 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-09 17:34:06       5 阅读
  3. 在Django里面运行非项目文件

    2024-06-09 17:34:06       4 阅读
  4. Python语言-面向对象

    2024-06-09 17:34:06       6 阅读

热门阅读

  1. Docker:镜像命令和容器命令

    2024-06-09 17:34:06       21 阅读
  2. Spring boot SSL证书路径配置

    2024-06-09 17:34:06       18 阅读
  3. MyBatis 延迟加载,一级缓存,二级缓存设置

    2024-06-09 17:34:06       22 阅读
  4. 在 Linux 系统上安装 Android NDK

    2024-06-09 17:34:06       20 阅读
  5. Redis的哨兵机制,一文全解

    2024-06-09 17:34:06       13 阅读
  6. 07.组件间通信-provide-inject(祖孙通信)

    2024-06-09 17:34:06       24 阅读
  7. 常见知识点总结

    2024-06-09 17:34:06       18 阅读
  8. 列表的C++实

    2024-06-09 17:34:06       19 阅读
  9. JZ2440笔记:热插拔驱动

    2024-06-09 17:34:06       15 阅读
  10. 相同的树-力扣

    2024-06-09 17:34:06       24 阅读
  11. TypeScript常见面试题第十一节

    2024-06-09 17:34:06       13 阅读
  12. TalkingData数据统计:洞察数字世界的关键工具

    2024-06-09 17:34:06       17 阅读