c++怎么将计算结果取整数部分
时间: 2024-09-07 17:06:35 浏览: 24
在C++中,如果你想要取得计算结果的整数部分,可以使用几种不同的方法:
1. 使用`static_cast<int>()`进行类型转换:当你有一个浮点数结果时,可以使用`static_cast<int>()`将其转换为整数。这会截断小数部分,只保留整数部分。
```cpp
double result = 3.14159;
int integerPart = static_cast<int>(result); // integerPart将会是3
```
2. 使用`floor()`函数:如果你使用的是C++的`<cmath>`库,你可以使用`floor()`函数来向下取整,即使结果是负数时也会向下取到最接近的较大整数。
```cpp
#include <cmath>
double result = -3.14159;
int integerPart = static_cast<int>(std::floor(result)); // integerPart将会是-4
```
3. 使用`ceil()`函数:与`floor()`相反,`ceil()`函数用于向上取整,即使结果是负数时也会向上取到最接近的较小整数。
```cpp
#include <cmath>
double result = -3.14159;
int integerPart = static_cast<int>(std::ceil(result)); // integerPart将会是-3
```
4. 使用` trunc()`函数:`trunc()`函数从C++11开始提供,用于截断小数部分,取得整数部分。这种方法不管结果是正数还是负数,都是直接去除小数部分。
```cpp
#include <cmath>
double result = -3.14159;
int integerPart = static_cast<int>(std::trunc(result)); // integerPart将会是-3
```