zoukankan      html  css  js  c++  java
  • 将整型数字以二进制形式打印出来

    2019-05-28

    关键字:整型转二进制


    分享一个 C 语言实现的将整型数字转换成二进制形式打印出来的代码。

    这里贴两种打印形式,第一种形式是打印 2 个字节长度的数字,且每 4 位就会空一个格出来以增加阅读性。而第二种形式的则是只打印 1 个字节。

    其实这两个函数都是笔者在工作中写的,各自的适用场景不同而已。

    下面先贴出这两个函数各自的执行结果,即转换结果。

    笔者不喜欢啰嗦,上面的结果的源代码如下,整个代码逻辑极其简单,就不解释了。有需要的同学直接拷贝走人就好。 

    #include <stdio.h>
    
    
    void pbin1(int i)
    {
        int j;
        int mask = 32768;// 1000 0000 0000 0000
        fprintf(stdout, "%d:	", i);
        for(j = 0; j < 16; j++)
        {
            fprintf(stdout, "%c", ((i & (mask >> j)) >> (15 - j)) + '0');
            switch(j){
                case 3:
                case 7:
                case 11:
                    fprintf(stdout, " ");
                break;
            }
        }
        fprintf(stdout, "
    ");
    }
    
    void pbin2(unsigned char dat)
    {
        char index;
        printf("%d:	", dat);
        for(index = 7; index >= 0; index--)
        {
            printf("%d", (dat >> index) & 1);
        }
        printf("
    ");
    }
    
    
    int main()
    {
        
        pbin1(1);
        pbin1(-1);
        pbin1(-128);
        pbin1(127);
        pbin1(256);
        pbin1(17173);
        pbin1(65535);
        
        printf("------------------------------------------
    ");
        
        pbin2(1);
        pbin2(127);
        pbin2(255);
        pbin2(256);
        pbin2(-2);
    
        return 0;
    }

  • 相关阅读:
    HTTP协议学习笔记
    linux对文件某列求和
    mongodb拆库分表脚本
    mongodb基础应用
    mongodb实现对某列求和SUM
    员工价值——如何体现自己价值,如何被自己的领导认可
    使用MySQLMTOP监控MySQL性能(二)
    使用MySQLMTOP监控MySQL性能(一)
    apache+tomcat实现session共享
    apache+tomcat负载均衡3种实现方式
  • 原文地址:https://www.cnblogs.com/chorm590/p/10916263.html
Copyright © 2011-2022 走看看