`

从0学习C++ (三) 结构体中包含共同体

    博客分类:
  • C++
 
阅读更多
#include <iostream>;
#include <cmath>;
#include <string>;
#include <cstring>;

/*
	结构体中包含共用体
	举例:管理一个商品小目录,其中有一些商品的ID是整数,而另一些的ID是字符串。
	     在这种情况下,可以这样做:
*/
struct widget{
	char brand[20];
	int type;
	union id{
	long id_num;
	char id_char[20];
	}id_val;
};




int main(){

	using namespace std;
	
	widget price;
	price.type = 2;

	if(price.type == 1){
		cin >> price.id_val.id_num;
	}else{
		cin >> price.id_val.id_char;	
	}

	if(price.type == 1){
		cout << price.id_val.id_num << endl;
	}else{
		cout << price.id_val.id_char << endl;
	}

	
	


}

分享到:
评论

相关推荐

    c++结构体、共同体和枚举型

    主要讲解c++中有关结构体、共同体和枚举型的知识

    C面向对象chap结构体共同体和枚举类型PPT课件.pptx

    【C面向对象编程中的结构体、共同体和枚举类型】 在C语言中,面向对象编程的概念虽然不如C++和Java那样直接支持,但仍然可以通过结构体(struct)来实现类似的功能。结构体允许我们将不同数据类型的数据组合成一个...

    c++面向对象程序设计第三版谭浩强教学大纲.pdf

    * 自定义数据类型的定义与引用(结构体与共同体的定义) * 枚举型数据定义与使用 第八章 类和对象的程序设计 * 面向对象的基本概念(类、对象、封装、继承) * 类的声明和对象的定义方式 * 成员函数的性质和在类外...

    C#调用C++的动态库Dll示例(含UsbLibDotNet使用)

    2.结构体含union共同体的C++转C#示例 3.C#结构体指针的调用演示 4.C#读取USB数据设备的示例 5.C#动态调用C++dll库示例 6.C#静态调用C++dll库示例 注意:UsbLibDotNet使用时候需要先安装驱动程序才可以正常使用。

    C++ PPT课件。。。。

    第一章 C++概述,第二章 数据类型、运算符与表达式,第三章 简单的输入输出,第四章 C++的流程控制语句,第五章 函数与编译预处理,第六章 数组 ,第七章 结构体、共同体和枚举类型 ,第八章 指针和引用,第九章 类...

    c++的基础学习

    "补充 第11章 结构体共同体枚类型.ppt"涵盖了C++中的结构体、联合体和枚举类型。结构体是组织数据的一种方式,联合体则允许共享内存空间,而枚举提供了更安全的整型常量表示。 "1-6章.rar"是一个综合性的学习资源,...

    C++程序设计(全套学习课件)——帮你打下C++的坚实基础

    第8章 结构体、共同体和枚举类型 第9章 指针和引用 第二部分 面向对象的程序设计 第10章 类和对象 第11章 类和对象的其他特性 第12章 继承和派生 第13章 多态性 第14章 输入/输出流 第15章 模板

    c++面试bymarker

    在【部分内容】中,文档首先介绍了结构体(struct)和共同体(union)的区别。结构体是一种自定义数据类型,可以将不同类型的数据组合在一起。而共同体则允许不同的数据类型共享同一段内存空间。文档还提到了内存...

    此文件为作者自己制作C语言c++入门到进阶课无偿领取,输入密码qqdzy即可获取

    非常适合有一定编程基础和新手小白c/c++课程,课程简单易懂,无偿分享,其中包含了C语言开发,C语言基本控制结构类型及运算,数组,函数,指针,结构体与共同体…………一直到c++,mfc编程入门都有详细的讲解,为了...

    C++习题和答案

    C 语言中的结构体仅包含数据成员,而不包含函数。 8. **使 C 语言发生质变的改进** - **选项**: A.增加了一些新的运算符; B.允许函数重载,并允许设置缺省参数; C.规定函数说明必须用原型; D.引进了类和对象的概念...

    郑莉老师 C++基础 第四章讲义

    在清华大学郑莉老师的C++基础课程中,第四章讲义内容丰富,覆盖了面向对象编程的基础知识点,包括对象的模拟、类的定义、数据与行为的封装、类成员的访问控制以及类的构造和析构过程等。 首先,面向对象程序设计中...

    C++选择题汇总-题库.doc

    8. 类概念:类是一种抽象数据类型的实现,是具有共同行为的若干对象的统一描述体,而不是 C 语言中的结构体类型。 9. C++语言发展:C++语言是以 C 语言为基础逐渐发展而演变而成的一种程序设计语言,而不是以 ...

    C++数学课偷懒神器

    在C++中实现这个功能,通常需要定义一个结构体或类来表示几何形状,如矩形、圆形、锥体等,然后根据其形状的特性计算表面积。例如,对于一个立方体,表面积是6倍的边长平方。通过输入物体的尺寸,程序可以快速计算出...

    计算概论A B19 链表 枚举 共同体 .pdf

    共同体的一个重要特性是它的内存布局非常紧凑,所有成员共享同一块内存空间,这意味着修改一个成员可能会影响其他成员的值。在处理资源有限或者需要高效内存管理的场景下,共同体可以是一个有用的工具。 `new` 和 `...

    c++三级项目设计.docx

    所有系统均需采用文件保存数据,学生应参考教材中的“文件”章节学习文件读写方法,确保数据的持久化存储。 【用户界面】 各系统需提供文字菜单,用户根据提示输入数据。菜单设计直观,输入提示清晰,确保用户友好...

    剑桥大学C/C++讲义

    6. **历史背景**:从BCPL到Java的发展历程,包括C语言和C++的历史沿革。 #### 二、详细知识点解析 **1. 基础概念** - **类型**:C语言支持多种基本数据类型,如整型(int)、字符型(char)、浮点型(float/double)等...

    C++课件希望对大家有用

    5. **第6章 结构体共同体和枚举型**:结构体允许我们将不同类型的变量组合成一个单一的数据结构,共同体(union)则提供了一种存储不同类型数据的方式。枚举型(enumeration)是为整数常量提供命名的工具,有助于...

    C++程序设计 (谭浩强超级完整版).ppt

    6. **结构体、共同体和枚举类型**:结构体(struct)允许将多个不同类型的数据组合成一个整体,共同体(union)共享内存空间,枚举(enum)定义一组命名的整数常量。 7. **指针和引用**:指针是存储其他变量地址的...

    C++之程序结构,头文件,源代码文件.pdf

    一个标准的C++工程通常由三部分组成:头文件(header files)、函数源代码文件(source files,通常是.cpp或.cc)以及主程序源代码(包含main()函数)。这些部分各司其职,协同工作,以实现程序的功能。 头文件的...

Global site tag (gtag.js) - Google Analytics