前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >NDK启航篇——C语言基础(联合体)

NDK启航篇——C语言基础(联合体)

作者头像
longzeqiu
发布2020-04-09 11:32:44
3160
发布2020-04-09 11:32:44
举报
文章被收录于专栏:Android小知识Android小知识
今天写一下联合体union(比较简单)。

什么是联合体?

  • 不同类型的变量,共同占一段内存(相互覆盖),联合体变量任何时刻只有一个变量存在,所以也叫共用体

联合体的作用

  • 节省内存

联合体的大小

  • 联合体变量的大小等于最大的成员所占的字节数

联合体的定义

  • union 名字{};

示例代码如下

代码语言:javascript
复制
union MyValue{
  int y;
  int x;
  double z;
};
void main(){
  union MyValue d1;
  d1.x = 90;
  d1.y = 100;
  d1.z = 99.9;//最后一个赋值的有效
 
  getchar();
}

enum 枚举

  • 固定的数据
  • 枚举就是一种数据类型
  • 列举所有的情况
  • 限定值,保证取值的安全性
代码语言:javascript
复制
enum Day{
  Monday,
  Tuesday,
  Wednesday
};
//不写默认相当于
enum Day{
  Monday = 0,
  Tuesday = 1,
  Wednesday = 2
};

void main (){
  //枚举的值必须是括号中的值
  enum Day d = Monday;
  printf("%#x,%d\n",&d,d);
 /* int i = 0;
  enum Day *p = &d;
  for(;i<3;i++){
   printf("%#x,%d\n",p,*p);
    p++;
}*/
  getchar();
}

联合体的知识点到这里就写完了,明天写文件的读写IO操作, 这是C语言最后的部分喽,提前给自己鼓个掌?。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是联合体?
  • 联合体的作用
  • 联合体的大小
  • 联合体的定义
  • 示例代码如下
  • enum 枚举
  • 联合体的知识点到这里就写完了,明天写文件的读写IO操作, 这是C语言最后的部分喽,提前给自己鼓个掌?。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档