C++如何选择类型_c++ 数据类型的选择原则-程序员宅基地

技术标签: C++  c++  

和C语言一样,C++的设计准则之一也是尽可能地接近硬件。C++的算术类型必须满足各种硬件特质,所以它们常常显得繁杂而令人不知所措。事实上,大多数程序员能够(也应该)对数据类型的使用做出限定从而简化选择的过程。以下是选择类型的一些经验准则:

 

●当明确知晓数值不可能为负时,选用无符号类型。

●使用int执行整数运算。在实际应用中,short常常显得太小而long-般和int有一样的尺寸。如果你的数值超过了int的表示范围,选用long long。

●在算术表达式中不要使用 char或bool,只有在存放字符或布尔值时才使用它们。因为类型char在一些机器上是有符号的,而在另一些机器上又是无符号的,所以如果使用char进行运算特别容易出问题。如果你需要使用一个不大的整数,那么明确指定它的类型是signed char 或者unsigned char。

●执行浮点数运算选用double,这是因为float通常精度不够而且双精度浮点数和单精度浮点数的计算代价相差无几。事实上,对于某些机器来说,双精度运算甚至比单精度还快。long double 提供的精度在一般情况下是没有必要的,况且它带来的运行时消耗也不容忽视。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/caochunxiao1/article/details/106766578

智能推荐

探秘FPGA-Proj:一款强大的FPGA开发框架-程序员宅基地

文章浏览阅读234次,点赞3次,收藏4次。探秘FPGA-Proj:一款强大的FPGA开发框架项目地址:https://gitcode.com/cxlisme/FPGA-proj项目简介FPGA-Proj是一个基于VHDL的开源FPGA开发框架,由开发者cxlisme维护。它旨在简化FPGA设计流程,提高效率,让开发者能够更专注于硬件逻辑的设计与实现。技术分析VHDL支持FPGA-Proj以VHDL为主要设计语言,这是一种在数...

探索AI微信助手:[aiwechat-vercel](https://gitcode.com/pwh-pwh/aiwechat-vercel?utm_source=artical_gitcode)——...-程序员宅基地

文章浏览阅读242次,点赞5次,收藏5次。探索AI微信助手:aiwechat-vercel——智能化交互新体验项目地址:https://gitcode.com/pwh-pwh/aiwechat-vercel在数字化时代,我们总是寻求更便捷、智能的方式来处理日常任务。而今天,我要向大家介绍一个开源项目——aiwechat-vercel,这是一个基于微信接口和现代云平台构建的AI微信助手。通过它,我们可以利用人工智能的力量,轻松实现与微信...

Android成长之路-LayoutInflater和inflate的用法_android inflate 和ondraw-程序员宅基地

文章浏览阅读296次。在这里用Tabhost的例子来说明:[java] view plaincopypackage cn.csdn.activity; import android.app.TabActivity; import android.os.Bundle; import android.view.LayoutInflater; i_android inflate 和ondraw

GPU Microarch 学习笔记【3】Tensor Core_tensorcore 寄存器布局-程序员宅基地

文章浏览阅读267次。Tensor Core是如何进行计算的_tensorcore 寄存器布局

适用于嵌入式arm的ffmpeg编解码-程序员宅基地

文章浏览阅读718次。现在ffmpeg更新较频繁,如果使用API开发,各个版本都有一定区别,建议查阅文档。如果只需要ffmpeg的命令行,就不用理会了,直接上最新的。在嵌入式arm应用开发中,经常会遇到需要处理视频的情况,这时候就需要强大的开源工具ffmpeg出马了。这里的ffmpeg只具备了解码的功能,如果还需要264等编码功能,还需要安装x264库,这里就不细说了,网上很多教程。ffmpeg的编译系统做得特别好,基本兼容各类型环境,不管是x86还是arm,都可以顺利编译通过。将生成的so库拷贝到系统目录下,执行程序即可。_arm的ffmpeg

【matlab】 matlab实现计算两张图片的相似度_图片相似度算法matlab-程序员宅基地

文章浏览阅读2.1w次,点赞6次,收藏92次。【matlab】 matlab实现计算两张图片的相似度_图片相似度算法matlab

随便推点

CCF-CSP 202203-2 出行计划 差分算法满分题解+解题思路_ccf csp2022032-程序员宅基地

文章浏览阅读9.8k次,点赞44次,收藏85次。CCF-CSP 202203-2 出行计划 差分算分满分题解+解题思路题目链接:202203-2 出行计划70分思路:按照题目要求,直接设置两个数组,记录进入场所的时刻t和单位时间c,即int t[N],c[N];由于需要知道核酸检测结果出来的时刻,则直接设置为l,即int l = q+k;双重循环进行判断,外循环为输入q,内循环遍历数组进入场所的时刻t必须满足:已出检测结果+检测结果未过期70分具体代码如下:#include <iostream>#include <_ccf csp2022032

Android入门第40天-Android中的Service(SimpleStartService)_android service需要注册-程序员宅基地

文章浏览阅读525次。从今天开始,之前39天的Android如果每一篇只有30分钟就能读完和掌握那么从今天开始越往后会越复杂。因为我们的Android教程开始进入“中级”难度了。特别是Service,这个Service我要分成好几章来讲,其重要性足以可见。_android service需要注册

分支结构 单分支&多分支&嵌套分支结构_多分支结构+单分支结构-程序员宅基地

文章浏览阅读2k次。单分支结构&多分支结构嵌套分支结构switch结构总结_多分支结构+单分支结构

区间预测算法 | Matlab基于卷积神经网络-长短期记忆网络CNN-LSTM区间预测,CNN-LSTM核密度估计下置信区间预测。CNN-LSTM-K_神经网络预测值的置信区间-程序员宅基地

文章浏览阅读195次。区间预测算法 | Matlab基于卷积神经网络-长短期记忆网络CNN-LSTM区间预测,CNN-LSTM核密度估计下置信区间预测。CNN-LSTM-K_神经网络预测值的置信区间

github上的一个html5俄罗斯方块小游戏做了些简化_html5 小游戏 github-程序员宅基地

文章浏览阅读5.2k次。html 俄罗斯方块 --> --> html, body { background: #3b3d3b; padding: 0; margin: 0; font-family: "Play", "Helvetica Neue", "Arial", sa_html5 小游戏 github

gradle版本/gradleplugin版本/Javajdk版本/kotlin版本_org.jetbrains.kotlin:kotlin-gradle-plugin-程序员宅基地

文章浏览阅读2.1w次,点赞12次,收藏52次。一、gradle 发布版本参考:gradle 发布版本 Java版本兼容:Java versionFirst Gradle version to support it82.094.3104.7115.0125.4136.0146.3156.7167.0177.3二、gradle 版本和 gradle 插件版本 匹配兼容参考:gradle 版本和 gradle 插件版本 匹配兼容 下表列出了各个 An_org.jetbrains.kotlin:kotlin-gradle-plugin

推荐文章

热门文章

相关标签