当前位置:  编程技术>c/c++/嵌入式

C++中共用体的定义与应用总结

    来源: 互联网  发布时间:2014-10-21

    本文导语:  定义:使用覆盖技术,几个变量相互覆盖,从而使几个不同变量共占同一段内存的结构,成为共同体类型的结构。 共同体的定义类似结构体,不过共同体的所有成员都在同一段内存中存放,起始地址一样,并且同一时刻只能使...

定义:
使用覆盖技术,几个变量相互覆盖,从而使几个不同变量共占同一段内存的结构,成为共同体类型的结构。

共同体的定义类似结构体,不过共同体的所有成员都在同一段内存中存放,起始地址一样,并且同一时刻只能使用其中的一个成员变量。

声明共用体的一般形式为:

代码如下:

union 共用体类型名
{
    成员列表
};

定义共用体变量的一般形式为:

共用体类型名   共用体变量名;

例如:

代码如下:

union data{
int        i;
char   ch;
double d;
};
data a,b,c;

或者
代码如下:

union{
int        i;
char   ch;
double d;
};
data a,b,c;

结构体变量所占长度是各成员占的内存长度之和。每个成员分别占有自己的内存单元。共用体变量所占的内存长度等于最长的成员的长度。

共用体的使用
1.不能应用共用体变量,而只能引用共用体变量中的成员。

例如:

代码如下:

cout

    
 
 

您可能感兴趣的文章:

  • c++通用模板类(template class)定义实现详细介绍
  • 常用 C++ 数学模板定义 libefgy
  • linux下编译c++程序,系统头文件中包含的函数的定义源代码可以查看吗?
  • linux下,C++如何定义一个无符号64位整型。谢谢
  • 深入C++浮点数无效值定义与判定的解决办法
  • 解析C++浮点数无效值的定义与无效值判定的小结
  • 解决C++中重定义的方法总结
  • 如何跟踪进入C++定义实现的文件中?
  • 在C++中怎样定义一个半字节变量??
  • c++动态内存空间示例(自定义空间类型大小和空间长度)
  • pthread_create错误,怎么在C++类中定义线程函数指针
  • 基于C++类型重定义的使用详解
  • 深入分析C++中声明与定义的区别
  • 基于C++全局变量的声明与定义的详解
  • 浅析C++中结构体的定义、初始化和引用
  • 用typedef定义类型的总结分析
  • 用typedef定义类型详细总结
  • shell自定义函数的6个特点总结
  • 枚举类型的定义和应用总结
  • 关于C/C++中typedef的定义与用法总结
  • map插入自定义对象总结
  • JSP自定义标签Taglib实现过程重点总结
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.awt类radialgradientpaint的类成员方法: getradius定义及介绍
  • 请问可以用宏定义定义一个二维数组吗?
  • java命名空间javax.xml.stream类xmlinputfactory成员方法: seteventallocator定义参考
  • 想修改路径定义,想找到在哪里定义的,应该怎么办?
  • java命名空间java.text接口attributedcharacteriterator的类成员方法: getallattributekeys定义及介绍
  • php定义数组和使用示例(php数组的定义方法)
  • java命名空间java.beans接口propertyeditor的类成员方法: supportscustomeditor定义及介绍
  • 上次问题解决了,原来是extern被重定义了。。。天阿,关键字也可以被重定义。。。。。欢迎接分
  • java命名空间javax.swing类jtextarea的类成员方法: getcolumnwidth定义及介绍
  • 如何定义一个可变参数的自定义函数
  • java命名空间javax.swing类jtextfield的类成员方法: getcolumnwidth定义及介绍
  • 下面的变量我都下了定义,为什么还出现没定义的信息
  • java命名空间javax.swing类actionmap的类成员方法: allkeys定义及介绍
  • oracle异常(预定义异常,自定义异常)应用介绍
  • java命名空间javax.swing类inputmap的类成员方法: allkeys定义及介绍
  • 为什么我在头文件time.h里找不到time_t的定义呢?只有这个定义typedef __time_t time_t;
  • java命名空间javax.rmi.corba接口valuehandler的类成员方法: iscustommarshaled定义及介绍
  • 函数有定义怎么提示没有低能定义的错误呢?
  • java命名空间javax.swing类jcomponent的类成员方法: resetkeyboardactions定义及介绍
  • android自定义控件和自定义回调函数步骤示例
  • java命名空间java.beans接口customizer的类成员方法: setobject定义及介绍
  • 自定义公共类的装载,包的定义




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3