编写一个程序,输入一个浮点数 num,将其转换为整数,并输出原始浮点数及转换后的整数值。同时,展示两种类型转换的方式:C风格转换和C++的static_cast
时间: 2024-10-18 12:07:56 浏览: 124
PHP判断一个变量是否为整数、正整数的方法示例
当你需要将一个浮点数转换成整数时,在C语言和C++中都有一些内置函数和语法来完成这个任务。这里有两种方式:
1. **C风格转换**:
使用`(int)`类型强制转换操作符,这是一种“隐式”类型转换。例如:
```c
#include <stdio.h>
float input_num;
printf("请输入一个浮点数: ");
scanf("%f", &input_num);
int integer_value = (int)input_num; // 隐式类型转换
printf("原始浮点数: %f\n", input_num);
printf("转换后的整数值: %d\n", integer_value);
```
注意,这种方法可能会导致小数部分被截断。
2. **C++的`static_cast`**:
在C++中,更推荐使用`static_cast`来进行类型转换,因为它提供了一种明确的转换意图。例如:
```cpp
#include <iostream>
float input_num;
std::cout << "请输入一个浮点数: ";
std::cin >> input_num;
int integer_value = static_cast<int>(input_num); // 明确类型转换
std::cout << "原始浮点数: " << input_num << "\n";
std::cout << "转换后的整数值: " << integer_value << "\n";
```
`static_cast`不会丢失精度,除非转换目标类型不能容纳源类型的所有值。
阅读全文