【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、总结

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

  • 算术运算符

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

  • 精度变化

相关推荐
apocelipes1 天前
常用编程语言和库的正则表达式性能对比
c语言·c++·python·性能优化·golang·开发工具和环境
郝学胜_神的一滴3 天前
CMake 034:生成器表达式:解耦构建时序、精简分支逻辑的终极利器
c++·cmake
见过夏天3 天前
C++ 基础入门完全指南
c++
用户805533698035 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
BadBadBad__AK5 天前
线段树维护区间 k 次方和
c++·数学·算法·stl
卷无止境6 天前
Eigen 库如何借助 OpenMP 加速计算
c++·后端
卷无止境6 天前
OpenMPI、MPICH 与 OpenMP:关系、核心概念与架构全解
c++·后端
郝学胜_神的一滴7 天前
CMake 30:循环语法全解|foreach_while双循环精讲、迭代技巧与实战避坑指南
c++·cmake
卷无止境9 天前
C++ 的Eigen 库全解析
c++
卷无止境9 天前
现代 C++特性大盘点:一门脱胎换骨的老语言
c++·后端