C++学习笔记——四种类型强制转换

本文介绍了C++中的强制类型转换运算符,包括(double)、(int)等,用于在不同数据类型间转换。示例代码展示了如何将浮点数转换为整数,并通过const_cast移除常量指针的const属性。程序执行结果展示了数值转换的效果。
摘要由CSDN通过智能技术生成

强制转换运算符是一种特殊的运算符,它把一种数据类型转换为另一种数据类型。强制转换运算符是一元运算符,它的优先级与其他一元运算符相同。

大多数的 C++ 编译器都支持大部分通用的强制转换运算符:

(type) expression

其中,type 是转换后的数据类型。下面列出了 C++ 支持的其他几种强制转换运算符:
在这里插入图片描述

上述所有的强制转换运算符在使用类和对象时会用到。现在,请看下面的实例,理解 C++ 中如何使用一个简单的强制转换运算符。复制并黏贴下面的 C++ 程序到 test.cpp 文件中,编译并运行程序。

#include <iostream>
using namespace std;
 
int main()
{
   double a = 21.09399;
   float b = 10.20;
   int c ;
 
   c = (int) a;
   cout << "Line 1 - Value of (int)a is :" << c << endl ;
   
   c = (int) b;
   cout << "Line 2 - Value of (int)b is  :" << c << endl ;
   
   return 0;
}
当上面的代码被编译和执行时,它会产生下列结果:

Line 1 - Value of (int)a is :21
Line 2 - Value of (int)b is  :10

____________________________________________________________________________________________=====================================================================================================================================

下面具体介绍一下四种转换方法:在这里插入图片描述
=注意:static-cast<>不能转换掉数据的const.,valitble等特性.=

在这里插入图片描述下面例子:

#include<iostream>
using namespace std;

int main()
{
    int num=100;
    const int*p1=&num;//定义一个p指针
    int* p2=const_cast<int*>(p1);//将常数指针p1去掉const属性
    *p2=200;
      cout << "num=" <<num<< endl;
    return 0;
}
输出num=200

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值