当前位置:C++技术网 > 资讯 > 关于小数和整数的问题

关于小数和整数的问题

更新时间:2017-07-09 23:11:13浏览次数:1+次

我阅读到小数和整数的章节时那些编程使用是直接在软件上打出来还是怎么样。这些有什么用,,,,初学小白一只

C++技术网会员解答:

    您好,感谢您对C++技术网的支持与信任。

    加了您QQ,想进一步了解所提问问题的情况,但是到目前还没有通过。所以就先凭我对问题的理解来回答了,可能理解不到位,理解的不准确。如果还有问题,那就请在文章后面留言哈。

    既然我不知道你具体想问什么,那么我就大概的讲讲吧,希望可以让你明白心中的疑惑吧。

    小数和整数,都是数字。在数学中,小数和整数都是无限的范围。然而在计算机中却是有范围的。因为计算机要存储数字,而存储数字用的内存的字节数和解释方式就决定了数字的大小范围。如果要表示正负数,自然是负数到正数的范围,如果表示正数,那么负数的一半范围全部都可以用在正数范围里,这样正数范围也就变大了。

    而对于整数的编程上的表示,我们C/C++中用short、int、long、long long。这些默认的是有符号的,即有正负数的。而在前面加上unsigned 就表示无符号的,即正数。比如unsigned int。

    而对于小数,和整数机制不一样,因为要表示整数的同时,还要表示小数。如果在几个字节中灵活的表示小数呢?也就是如何安放小数点的位置呢?这就是浮点数的来源。小数点的移动也就实现了不同精度的小数的表示。具体的看书上的解释。

    在编程使用中,我们一种是用数字即常数,一种是变量赋值。我们在编写代码的时候,直接打出来的数字,如:

int a = 100;

    这样的数字就是常量,数字的值是固定的。然后就是变量的赋值:

int b = a;

    这样你看不到b得到的值,因为这个值存储在a中。不过b确实得到的是一个整数。而不管是100还是a,都是一个整数。

    同样,小数也是如此:

float c = 10.552;
float d = 1.456278;
float e = c+d;

    c和d都是自己写的一个小数,都是常数。而e得到的是两个变量相加之后的值。而对于小数的精度,决定精度的是小数变量的类型float,并不直接由写的数字决定。因为决定真正存储的精度的是数据类型对应的变量的内存的字节长度。如果数据类型只能存储2个小数位精度,即使给定了4个小数点精度的数值,最后还是会被截断的。

    因为具体也不知道你问的什么意思,所以就整体上做这样的一个解释吧。如果有问题,请在文章后面补充吧。