联合\联合类型使用实例

简介: 联合\联合类型使用实例

联合中所有成员共享一段内存

其占有内存是所需内存最大的那个成员的空间

每次只有一个成员起作用

联合不能整体赋值和输出

在初始化时也只能初始化一个成员

联合不能作为函数的参数

#include<stdio.h>
#include<stdlib.h>
 
#define print printf("sc.i=%d,sc.d=%f,sc.c=%c\n",sc.i,sc.d,sc.c)
 
//定义联合
typedef union
{
  int i;
  double d;
  char c;
}score;
 
int main()
{
  score sc;
  printf("sizeof(score) is %d\n",sizeof(score));
  printf("sizeof(sc) is %d\n",sizeof(sc));
  printf("sizeof(sc.i) is %d,sizeof(sc.d) is %d,sizeof(sc.c) is %d",sizeof(sc.i),sizeof(sc.d),sizeof(sc.c));
  
  //赋值看特性
  sc.i=88;
  print;
  sc.d=78.5;
  print;
  sc.c='C';
  print;
  //未起作用的成员可以访问,只是将内存中的0、1按当前访问成员的数据类型来解释
  //有时会出现意想不到的结果
 
  system("pause");
  return 0;
}


目录
打赏
0
2
2
1
27
分享
相关文章
eclipse控制台中文输出乱码解决方法
eclipse控制台中文输出乱码解决方法
392 0
使用`dbus-monitor`命令深入了解DBus通信
`dbus-monitor`是Linux下用于观察DBus消息的命令行工具,有助于理解和调试应用程序间的通信。安装该工具可通过发行版的包管理器,如`apt-get`、`dnf`或`pacman`。基本用法是运行`dbus-monitor`监控系统总线,使用`--session`监控会话总线,配合过滤器如`sender`、`interface`等精细化查看特定消息。当面临DBus相关问题时,此工具能辅助排查和诊断。
个人眼中关于当下数据库的看法
当下主流数据库,哪个最火?这是一个备受关注的话题。目前,主流数据库主要有关系型数据库和NoSQL数据库。关系型数据库是目前应用最广泛的数据库,而NoSQL数据库则是近年来发展很快的新型数据库。接下来将以MongoDB等NoSQL数据库为例,探讨其优势和适用场景。
278 1
个人眼中关于当下数据库的看法
数据结构之链表详解(二)
即顺序表之后,今天给大家带来另外一个线性结构——链表。
78 1
阿里云服务在校大学生免费使用
信息院学生的好福利,阿里云服务区在校大学生免费试用,快来一起体验
665 0
微信小程序:rich-text 富文本中图片自适应
微信小程序:rich-text 富文本中图片自适应
506 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问