c/c++中如何定义无穷大
c/c++ 采用国际标准 IEEE-754标准表示浮点数。
有具体的规定。例如单精度,双精度,例如符号位,实际指数,有偏移指数,指数域,尾数域。
例如,32位 单精度中的:正无穷,符号位=0,实际指数=128,有偏移指数=255,指数域=1111,尾数域=000 0000 0000 0000, 或 尾数域=0000 0000。+∞。
负无穷,符号位=1,其它与 正无穷 一样。−∞。非数,NaN, 符号位可能是1,也可能是0,实际指数=128,有偏移指数=255,指数域=1111,尾数域= 非0 的数字。NaN。
其余情况,请自己去查 IEEE-754。概括说:无穷 指数全1,小数位0。 非数, 指数全1,小数位 非0。正负 看符号位。
扩展资料:
C语言的发展过程:当代最优秀的程序设计语言。
早期的C语言主要是用于UNIX系统。由于C语言的强大功能和各方面的优点逐渐为人们认识,到了八十年代,C开始进入其它操作系统,并很快在各类大、中、小和微型计算机上得到了广泛的使用。成为当代最优秀的程序设计语言之一。
C语言是当今最流行的程序设计语言之一,它的功能丰富、表达力强、使用灵活方便、应用面广、目标程序高、可植入性好,既有高级语言的特点,又有低级语言的许多特点,适合作为系统描述语言,既可以用来编写系统软件,也可以用来编写应用软件。
C语言诞生后,许多原来用汇编语言编写的软件,现在都可以用C语言编写了(如UNIX操作系统),而学习和适用C语言要比学习和适用汇编语言容易得多。
参考资料来源:百度百科-C/C++
假如你实际数据的最大值为3,那么,只要大于3的数都可以定义成无穷大。也许你会说,如果,我们的实际数据非常大,超出了 int,long,double,long long,__int64 的表示范围了怎么定义呢?类似的,在java里面有 BigInteger和BigDecimal 类,这个问题不用愁,同理,在c/c++里面也一样,我们可以用用一个 int 型数组来表示大数(具体方法可以另外百度,实现并不难),那么,无穷大还是可以表示成比 “实际的最大值大”的任意一个值都行的值。
#define MINCHAR 0x80
#define MAXCHAR 0x7f
#define MINSHORT 0x8000
#define MAXSHORT 0x7fff
#define MINLONG 0x80000000
#define MAXLONG 0x7fffffff
#define MAXBYTE 0xff
#define MAXWORD 0xffff
#define MAXDWORD 0xffffffff