首页 > 系统服务 > 详细

Linux C 编程学习第五天_数据类型标志

时间:2021-06-04 01:23:17      阅读:21      评论:0      收藏:0      [点我收藏+]

数据类型标志

接上次数据抽象最后的问题,我需要一个数据标志,1就表示数据是极坐标,0就表示数据是直角坐标,这样在运算的时候,就不会数据转换造成精度损失,也不用调用不同的运算函数来计算了。

在开始这个之前,需要枚举 enum 的概念:

 枚举 enum 和 struct 关键字很类似,enum XXX  用来表示一个枚举类型,枚举类型的成员是常量,他们的值编译器自动分配:

技术分享图片

 

 

 默认是从0开始分配,如果给第一个赋值,那么就会从那个值开始,数据类型是int

所以上述代码:num1   num2  num3  num4  num5   的值分别为,0  1  2   1  2   

另外要注意,枚举成员的名字和变量的名字是在统一命名空间的 ,这点和结构体不同

构建复数格式枚举:

技术分享图片

好,这里我们就可以实现我们目的了,在之前的两种构建复数函数中添加一个新的结构体变量:

技术分享图片

 

 技术分享图片

在构建复数函数中也进行修改:

技术分享图片

 

 技术分享图片

 

 这样两个构建复数的函数都带上了标签,z.t 为0就是 a + bi 格式,为1就是极坐标格式。

对运算函数加一行判断标志

技术分享图片

 

 这样修改之后的函数,不需要直到输入的复数是什么格式的,都可以计算出正确的实部。

同理其他运算函数都做类似添加,函数接口没有发生改变,但是运算函数却可以兼容不同的复数格式了。

 

至此,结构体告一段落。

Linux C 编程学习第五天_数据类型标志

原文:https://www.cnblogs.com/rezhu-enable/p/14788298.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!