C ++中的类型转换
在这里,我们将了解C++中存在哪些类型转换技术。类型转换主要有两种类型。隐式和显式。
隐式类型转换
这也称为自动类型转换。这是由编译器完成的,用户没有任何外部触发器。当一个表达式具有多个数据类型时,便会执行此操作。
所有数据类型都升级为大变量的数据类型。
bool -> char -> short int -> int -> unsigned int -> long -> unsigned -> long long -> float -> double -> long double
在隐式转换中,它可能会丢失一些信息。该标志可能会丢失等。
示例
#include <iostream> using namespace std; int main() { int a = 10; char b = 'a'; a = b + a; float c = a + 1.0; cout << "a : " << a << "\nb : " << b << "\nc : " << c; }
输出结果
a : 107 b : a c : 108
显式类型转换
这也称为类型转换。用户可以在此处键入结果以使其成为特定的数据类型。在C++中,我们可以通过两种方式做到这一点,或者在括号中使用表达式,或者使用static_cast或dynamic_cast
示例
#include <iostream> using namespace std; int main() { double x = 1.574; int add = (int)x + 1; cout << "Add: " << add; float y = 3.5; int val = static_cast<int>(y); cout << "\nvalue: " << val; }
输出结果
Add: 2 value: 3