• C++ 中数串互转、进制转换的类


     1 /********************************************************************
     2 created:    2014/03/16 22:56
     3 filename:    main.cpp
     4 author:        Justme0 (http://blog.csdn.net/justme0)
     5 
     6 purpose:    C++ 中数串互转、进制转换的类
     7 *********************************************************************/
     8 
     9 #define _CRT_SECURE_NO_WARNINGS
    10 #include <iostream>
    11 #include <string>
    12 #include <cassert>
    13 using namespace std;
    14 
    15 /*
    16 ** Int 类用于数的进制转换及与字符串互转,目前只支持非负整数
    17 */
    18 class Int {
    19 public:
    20     /*
    21     ** 用数构造,默认构造为0
    22     */
    23     Int(int i = 0) : num(i) {}
    24 
    25     /*
    26     ** 用字符串构造,radix 为字符串中的数的进制,默认十进制
    27     */
    28     Int(const string &s, int radix = 10)
    29         : num(strtol(s.c_str(), NULL, radix)) {}
    30 
    31     /*
    32     ** 获取整数值
    33     */
    34     int to_int() const {
    35         return num;
    36     }
    37 
    38     /*
    39     ** 获取字符串形式,可设定获取值的进制数,默认为十进制
    40     */
    41     string to_str(int radix = 10) const {
    42         char s[35];    // int 最大是31个1
    43         return _itoa(num, s, radix);
    44     }
    45 
    46 private:
    47     int num;
    48 };
    49 
    50 int main(int argc, char **argv) {
    51     assert(string("1110") == Int(14).to_str(2));
    52     assert(14 == Int("1110", 2).to_int());
    53     assert(20 == Int("6").to_int() + Int("14").to_int());
    54     assert(13 == Int(Int(1101).to_str(), 2).to_int());
    55 
    56     cout << "ok" << endl;
    57 
    58     system("PAUSE");
    59     return 0;
    60 }
  • 相关阅读:
    iOS:CALayer锚点的使用
    iOS:UIView的CALayer基本演练
    iOS:iOS中的几种动画
    iOS:CALayer核心动画层
    Objective-C:KVO机制
    Objective-C:KVC机制
    投资方式集汇
    曝光卖假币的店铺和旺旺ID
    android 的开源输入法介绍,及 自动触摸的实现方法
    Intra Refresh of H264 encoder
  • 原文地址:https://www.cnblogs.com/jjtx/p/3605959.html
Copyright © 2020-2023  润新知