zoukankan      html  css  js  c++  java
  • 位运算符

    位运算符

    位运算作用于整数类型的运算对象,并把运算对象看成是二进制位的集合。

    • 如果运算对象是小整形将会被自动提升为较大的整数类型。
    • 运算对象可以是带符号的也可以是无符号的,如果运算对象是带符号的数并且是负值,那么位运算如何处理该符号位是依赖于机器的。并且,此时的左移操作会改变符号的值,因此是一种未定义的行为。
    • 关于符号位如何处理没有明确规定,所以强烈建议将位运算符用于处理无符号类型。

    移位运算符

    左移运算符(<<)在右侧插入值为0 的二进制位。
    右移运算符(>>)的行为则依赖于其左侧对象的类型,如果该运算对象是无符号类型,在左侧插入值为0的二进制位;如果该运算对象是带符号类型,在左侧插入符号位的副本值或值为0的二进制位,如何选择视环境而定。

    移位运算符又叫作IO运算符,满足左结合律:

    cout<<"hi"<<"there"<<endl;
    ((cout<<"hi")<<"there")<<endl; //与上面等价
    
  • 相关阅读:
    进程总结
    三大流程
    canvas简介
    时钟
    vim
    马拉车
    模拟退火
    洛谷P2055假期的宿舍
    洛谷P2320鬼谷子的钱袋.
    洛谷P2278操作系统
  • 原文地址:https://www.cnblogs.com/xiaojianliu/p/12498283.html
Copyright © 2011-2022 走看看