zoukankan      html  css  js  c++  java
  • 特现C语言编程特点的小代码,itoa,数值转换成字符串

    #define BASE_MAX (26 + 10)
    
    char const* itostr(int x, int base)
    {
        /* map 居中, 支技负余数 */
        static char const * const map = 
            "ZYXWVUTSRQPONMLKJIHGFEDCBA987654321"
          "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
    "
          + (BASE_MAX - 1);
    /* 静态缓冲,不支持多线程, 每次调用都覆盖上次的值 */ static char buf[BASE_MAX]; int oldx; /* 从缓冲尾部逆向使用 */ char* p = buf + sizeof(buf) - 1; /* *p = ''; buf 是一个静态数组,默认初始化为0 */ /* 不合法的base返回空串 */ if (base < 2 || base > 36) { return p; } do { /* 保存原数,用一次乘法取代取模*/ oldx = x; x = x / base; /* 先减后用 */ *--p = map[oldx - x * base]; } while (x); /* 负数的加上符号 */ if (oldx < 0) *--p = '-'; return p; }
  • 相关阅读:
    nginx 负载均衡
    nginX 安装 启动
    nginx 简介
    使用ASDM 管理 ciscoASA设备
    OSPF配置实验(一)
    VRRP
    HSRP 详解
    Rip 动态路由协议
    配置ASA防火墙 远程管理方式
    Oracle 重启监听
  • 原文地址:https://www.cnblogs.com/ahuangliang/p/3602441.html
Copyright © 2011-2022 走看看