zoukankan      html  css  js  c++  java
  • 进制间转换

    1.进制间转换
      十进制转二进制:十进制的数一直除以2,直到商为0,结果为逆序的每个余数。("除2取余,逆序排列"法,十进制转八、十六进制同理)

        16(10)→10000(2)

          


      十进制小数转二进制小数:小数一直乘以2,直到小数部分为0,结果为顺序的每个整数部分。("乘2取整,顺序排列"法)

        0.25(10)→0.01(2)

          0.25*2=0.5  取整是0    
          0.5*2=1.0    取整是1


      二进制转十进制:从右边第0位开始乘以2的位数次幂,二进制中为0的数忽略不计。

        101(2)→1*2^2+0+1*2^0=5(10)

      八进制转二进制转十进制(十六进制转二进制转十进制同理)

        3 4(8)

         ↓ 

        011 100(2)
         ↓

        28(10)

    2.计算机存储空间是以8位1字节,内存以补码的形式存储。

        

    3.关键字

      由字母、数字、下划线组成,不能数字开头。

    4.类型转换

      显示转换:(int)a  (int)2.5→2      通常发生在高精转低精,损精。

      隐式(自动)转换:通常发生在低精转高精,赋值号右边类型将转换为左边类型;

                                   同在赋值号右边将按高位看齐,char→int→unsigned→long→float→double(低→高精度转移)。

    5.注意问题
    (1)7%-4 → 3,-7%4 → -3
    (2)负号的优先级高于减号。负号与自增、自减同在,优先级按右结合。
    main()
    {
     int i=8;
     printf("%d ",++i);
     printf("%d ",--i);
     printf("%d ",i++);
     printf("%d ",i--);
     printf("%d ",-i++);
     printf("%d ",-i--);
     printf("%d ",i);
    }
    输出结果:9 8 8 9 -8 -9 8
    i的初值为8
    第二行i加1后故输出9
    第三行i减1后故输出8
    第四行输出i为8后再加1(为9)
    第五行输出i为9后再减1(为8)
    第六行输出-8后再加1(为9)
    第七行输出-9后再减1(为8)
    最后输出8
    (3)j=5;q=(++j)+(++j)+(++j);→j=8,q=24
    (4).
    8进制:正负号开头,0为第一位
    16进制:正负号开头,0x为前2位
    (5) i+++j→(i++)+j
    (6) x*=y+7→x=x*(y+7)

    (7) int z = sizeof(float);

    (8) printf("%0.0f ",0.55f);   →  1(浮点类型的显示的最后一位会四舍五入)

  • 相关阅读:
    shell脚本:/bin/sh^M: bad interpreter: No such file or directory。(转)
    Buffer在JDK中的基本说明

    清除版本控制信息针对 SVN
    修改——对密码进行加密
    省市加载javascript
    visual studio 2010 中 javascript 提示文本
    折腾自己的博客样式,自适应两列布局
    给动态加载的图片添加延迟加载(附在线demo)
    44种IE css bug实例测试总结(转载)
  • 原文地址:https://www.cnblogs.com/huen/p/3475632.html
Copyright © 2011-2022 走看看