首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >数据结构中 为什么要用typedef int datatype ,而不直接用int

数据结构中 为什么要用typedef int datatype ,而不直接用int

作者头像
Twcat_tree
发布2022-11-30 20:52:21
发布2022-11-30 20:52:21
57900
代码可运行
举报
文章被收录于专栏:二猫の家二猫の家
运行总次数:0
代码可运行

用typedef来为类型起个别名,如“typedef long INDEX;”。给long这样的类型起别名主要目的不是简化程序的书写,它有两个用处:一是表明该类型的特殊作用,二是将来有可能要改变这种类型(比如提高精度),如果直接声明为long型则失去了程序的可惟护性——每一个变量的声明都要改动;而声明为INDEX则使维护程序变得十分简单——只要改一下typedef语句即可。

比如

typedef int datetype

然后下面有N个函数

都是类似这样的

代码语言:javascript
代码运行次数:0
运行
复制
datetype typeadd(datetype a, datetype b)
{
    return a + b;
}

datetype typediff(datetype a, datetype b)
{
    return a - b;
}

datetype func1(datetype a, datetype b) {
    datetype tmp;
    tmp = typeadd(typediff(a,b), typediff(a,b));
    return typeadd(tmp, tmp);
}

如果你没用datetype而是直接用的int 当你希望这些函数计算浮点数的时候,你就必须把所有代码里的所有int都换成float或者double

而且一旦有地方换漏了就很容易出错,丢失精度什么的

但是如果你用的是datetype,你希望这些函数计算浮点数的时候,只需要修改一句话,就是

把typedef int datetype改为typedef float datetype或者typedef double datetype

=========================================================================== typedef用法地址: https://baike.baidu.com/item/typedef/9558154?fr=aladdin

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-09-18,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档