【C++入门】04、C++浮点型

1、浮点数

  • 浮点数是能够表示带小数部分的数字,他可以表示更大范围的数

  • 例如使用浮点类型表示314.15这样带小数部分的数字,计算机将其分成两部分存储,一部分表示值,一部分对值进行放大或缩小(也就是缩放因子). 最终上面的数字表示值为0.31415,而缩放因子为1000。

浮点数的写法:

  • 一种是标准小数点表示法:12.3, 0.8

  • 一种是E表示法,如3.45E6的值为3.45*1000000,E6意思是10的6次方,E表示法适合非常大和非常小的数,使用E-6是10的-6次方

2、浮点类型

  • C++有3中浮点类型:float、double和long double。

  • 可以使用ostream的setf() 方法来控制浮点数的进度输出。

浮点数的优缺点:

  • 浮点数可以表示整数之间的值,且由于有缩放因子,可以表示更大范围的值

  • 但是浮点运算速度同样比整数运算慢,且精度会降低。

3、C++算术运算符

  • 5种基本的C++算术运算符:+ - * / %

  • 算术运算符遵循通常的代数优先级,先乘除后加减

除法运算结果类型

  • 除法运算符(/) 的行为取决于操作数的类型。如果两个操作数都是整数,则C++将执行整数除法。结果的小数部分将被丢弃,最后的结果是一个整数。

  • 如果其中有一个(或两个)操作数是浮点值,则小数部分将保留,结果为浮点数

4、类型转换

C++类型转换的三种情况:

  • 将一种算术类型的值赋值给另一种算术类型的变量时,C++将堆值进行转换

  • 表达式中包含不同的类型时

  • 将参数传递给函数时。

将一个值赋给取值范围更大的类型通常不会导致什么问题。

  • 例如将short值付给long变量不会改变这个值

  • 但是将一个很大的long值,赋给float变量,将降低进度,float只有6位有效数字。

  • 将浮点型转换为整型时,C++采取截取(会丢弃小数部分)而不是四舍五入。最后int变量无法存储。

强制类型转换 static_cast<>

  • 可将一种数值类型转换为另一种数值类型。

5、总结

  • 浮点数,浮点类型,表示值范围

  • 算术运算符

  • 类型转换,强制类型转换

  • 精度变化

相关推荐
念风零壹20 分钟前
C++ 内存避坑指南:如何用移动语义和智能指针解决“深拷贝”与“内存泄漏”
c++
猫头虎36 分钟前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
YUJIANYUE1 小时前
PHP纹路验证码
开发语言·php
仟濹1 小时前
【Java基础】多态 | 打卡day2
java·开发语言
孞㐑¥1 小时前
算法——BFS
开发语言·c++·经验分享·笔记·算法
Re.不晚1 小时前
JAVA进阶之路——无奖问答挑战2
java·开发语言
八零后琐话1 小时前
干货:程序员必备性能分析工具——Arthas火焰图
开发语言·python
3GPP仿真实验室1 小时前
【MATLAB源码】CORDIC-QR :基于Cordic硬件级矩阵QR分解
开发语言·matlab·矩阵
知南x2 小时前
【Ascend C系列课程(高级)】(1) 算子调试+调优
c语言·开发语言
忆~遂愿2 小时前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker