数值限制------c++程序设计原理与实践(进阶篇)
发布日期:2022-04-04 06:36:22
浏览次数:5
分类:博客文章
本文共 891 字,大约阅读时间需要 2 分钟。
每种c++的实现都在<limits>、<climits>、<limits.h>和<float.h>中指明了内置类型的属性,因此程序员可以利用这些属性来检查数值限制、设置哨兵机制等等。它们对于开发底层程序是非常重要的。如果你觉得需要这些属性值,表明你的工作很可能比较靠近硬件。但这些属性还有其他用途,例如,对语言实现细节感到好奇是很正常的:“一个int有多大?”,“char是有符号的吗?”等等。希望从系统文档中找到这些问题的正确答案是很困难的,而c++标准对这类问题大多没有明确规定。较好的方法是写一个简短的小程序来获得这些问题的答案:
#includecout<<"number of bytes in an int:"< <<'\n';cout<<"largest int:"< <<'\n';cout<<"smallest int value:"< ::min()<<'\n';if(numeric_limits ::is_signed) cout<<"char is signed\n";else cout<<"char is unsigned\n"; char ch=numeric_limits ::min();cout<<"the char with the smallest positive value:"< <<'\n';cout<<"the int value of the char with the smallest positive value:"< <<'\n';
如果你编写的程序将来要用在多种硬件平台上,那么能在程序中获取上面这些信息就非常有价值了。另一种方法是将这些信息硬编码到程序中,但这对维护人员来说是灾难性的。
这些属性值对溢出检测也是很有用的。
c++程序设计原理与实践(进阶篇)
转载地址:https://www.cnblogs.com/l2017/p/7856495.html 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
感谢大佬
[***.8.128.20]2024年04月11日 06时31分46秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
PHP数组实际占用内存大小的分析
2019-04-27
PHP运行模式
2019-04-27
MYSQL的MERGE存储引擎
2019-04-27
mysql 压力测试脚本
2019-04-27
PHP代码保护——Zend Guard
2019-04-27
Javassist 使用指南
2019-04-27
Unix下C程序内存泄漏检测工具Valgrind安装与使用
2019-04-27
DFA和NFA
2019-04-27
CentOS装机必备-基本设置以及缺失文件
2021-06-30
自己开发操作系统
2021-06-30
phpize
2021-06-30
PHP安装eAccelerator
2021-06-30
PHP新的垃圾回收机制:Zend GC详解
2021-06-30
linux上使用strace查看C语言级别的php源码【一种方法】
2021-06-30
ACCEPT()和ACCEPT4()
2021-06-30
php内核探索方法与资源
2021-06-30
PHP安装扩展mcrypt以及相关依赖项 【PHP安装PECL扩展的方法】
2021-06-30
Javascript到PHP加密通讯的简单实现
2021-06-30
德国SNS交友/视频网站Poppen.de的技术架构分享
2021-06-30
UNIX环境编程
2021-06-30