码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • C++ 混合运算的类型转换


    一 混合运算和隐式转换

    2+5=7
    整型2+ 浮点5 行吗?成吗?中不中?
    C++ 中允许相关的数据类型进行混合运算。
    相关类型。
    尽管在程序中的数据类型不同,但逻辑上进行这种运算是合理的相关类型在混合运算时会自动进行类型转换,再计算隐式转换。

    二 算术转换

    转换原则:
    确保计算值的精度。转换后尽可能不丢失有效数字。
    short,2字节,能表示的数小;
    int,4字节,能表示的数大;
    int转short,要丢掉2字节的信息,不可取。
    short转int,增加存储空间,但不丢失信息,可行。

    转换方式
    字节少的向字节多的转换

    char,unsigned char,unsigned short,bool 转int cout<<('a'+5)<<endl;
    

    精度低的向精度高的转换

    int float double
    cout<<(5+3.5)<<endl;
    

    有符号向无符号转换

    int unsigned int
    unsigned int ui=32678
    cout<<(5+ui)<<endl;
    

    三 隐式转换时机

    混合类型的表达式

    int n=2;
    char c='a';
    cout<<(c+n)<<endl;
    

    赋值
    向左值类型转换

    double a=8.12;
    int k;
    k=a;
    

    在需要关系、逻辑表达式的地方。
    非0转true,0转false
    在这里插入图片描述

    四 显式转换

    程序中明确标记转换的类型,就是显式转换,也就是强制类型转换。
    格式
    <类型>(<表达式>)
    (<类型>)<表达式>
    举例

    double a=128,b=30;
    int n=3;
    a=(double)n/2;
    n=int(a/b);
    

    总结

    (1)相同类型的数据运算,结果的类型不变;
    (2)不同类型的数据运算,自动向精度高的类型转换;
    (3)赋值运算,向左值类型转换;
    (4)强制类型转换;
    (<类型>)变量或常量;
    <类型>(<表达式>)
    (5)精度高向精度低的类型转换,会损失精度;
    (6)整型相除,结果为整型,小数被舍去;
    在这里插入图片描述

  • 相关阅读:
    1024发博客!
    博客摘录「 dubbo默认超时设置容易引发的问题(默认1秒)」2023年9月23日
    2024最新互联网大厂面试题,(java,python,vue)
    技术20期:3种在 Python 中使用 Keras 库评估深度学习模型性能
    跟着pink老师前端入门教程(JavaScript)-day05
    【实践篇】DDD脚手架及编码规范
    TCP握手为什么是三次?两次行不行?
    nodejs+vue全国公考岗位及报考人数分析
    动态内存管理
    js 实现继承
  • 原文地址:https://blog.csdn.net/weixin_42291376/article/details/139362515
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号