我是靠谱客的博主 超级小白菜,最近开发中收集的这篇文章主要介绍C++无穷的表示,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在C++中,有时候会遇到无穷的情形。如何表示无穷?

首先,C++每种数据类型都有固定的位数,从而可以用数值位全1来表示最大数据。C++本身也定义了一些这样的常量来供使用。如最大无符号整型数据是UCHAR_MAX,十进制数为255,1十六进制数为0xff;最大double数据是DBL_MAX,等,无需包含头文件即可调用,在MSDN中可以查到。但是,最大数据只是最大,依然不是无穷。

在VS中,为了表示无穷,可以用一个常数除以0。注意这个常数必须是double类型的,int型数据除0编译器是会报错的。如果用一个正的非零的double类型数据/0,得到的将是1.#INF这样一个数据。这个数据具备正无穷的一切性质,而且比DBL_MAX要大。同样,用一个负的非零的double类型数据/0,得到的将是-1.#INF这样一个数据。这个数据同样具备负无穷的一切性质。注意不可以直接让double类型数据/0,

double s=1.0/0;

这样的写法都是错误的,编译器会报错。

如果这样写:

double a=1;

double s=a/0;

或者

double b=0;

double s=1/b;

或者

double a=1;

double b=0;

double s=a/b;

都是可以的,都可以求出s=1.#INF。

特别注意:不可以让分子分母同时为0。否则,求出的将是1.#IND,这个数据既不是正无穷,也不是负无穷,更不是0。

最后

以上就是超级小白菜为你收集整理的C++无穷的表示的全部内容,希望文章能够帮你解决C++无穷的表示所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(86)

评论列表共有 0 条评论

立即
投稿
返回
顶部