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

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

  • 算术运算符

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

  • 精度变化

相关推荐
上弦月-编程2 分钟前
Java类与对象:编程核心解密
java·开发语言·jvm
Hua-Jay8 分钟前
OpenCV联合C++/Qt 学习笔记(二十四)----差值法检测移动物体、稠密光流法跟踪移动物体及稀疏光流法跟踪移动物体
c++·笔记·qt·opencv·学习·计算机视觉
大大杰哥11 分钟前
从 Volatile 到 ThreadLocal:Java 线程安全机制备忘
java·开发语言·jvm
崇山峻岭之间20 分钟前
matlab绘制复杂曲线
开发语言·matlab
skywalk816321 分钟前
中文编程语言的开创性语法,言律:一门以汉语为思维内核的原生中文编程语言
开发语言·编程
郭老二23 分钟前
【C++】RPC:远程程序调用
c++·rpc
承渊政道23 分钟前
【贪心算法】(经典实战应用解析(六):整数替换、俄罗斯套娃信封问题、可被三整除的最⼤和、距离相等的条形码、重构字符串)
c++·算法·leetcode·贪心算法·排序算法·动态规划·哈希算法
宠..24 分钟前
VS Code SSH 远程连接 Ubuntu 并实现快速运行(C/C++示例)
java·运维·c语言·开发语言·c++·ubuntu·ssh
Omics Pro25 分钟前
免费!糖蛋白质组学数据分析
开发语言·深度学习·数据挖掘·数据分析·r语言·excel·知识图谱
枫叶林FYL27 分钟前
【强化学习】2 大规模并行强化学习中的耦合策略优化:受控多样性驱动的样本高效探索
开发语言·php