首页 > 编程知识 正文

简单实现strtol函数

时间:2023-05-03 09:46:29 阅读:260097 作者:4292

#include "windows.h"#include<cstdlib>//参考ASCII码表设计static int hex_tablehpdyj = {0, 0, 0, 0, 0, 0, 0, 0, 0,0, 0, 0, 0, 0, 0, 0, 0, 0,0, 0, 0, 0, 0, 0, 0, 0, 0,0, 0, 0, 0, 0, 0, 0, 0, 0,0, 0, 0, 0, 0, 0, 0, 0, 0,0, 0, 0, 0, 1, 2, 3, 4, 5, 6,7, 8, 9, 0, 0, 0, 0, 0, 0,0, 10, 11, 12, 13, 14, 15, 0, 0,0, 0, 0, 0, 0, 0, 0, 0, 0,0, 0, 0, 0, 0, 0, 0, 0, 0,0, 0, 0, 0, 0, 0, 10,11, 12, 13, 14, 15 };int hex_to_decimal(char* hex_str)//简单strtol底层实现方法{ char ch; int iret = 0; while (ch = *hex_str++) { iret = (iret << 4) | hex_table[ch]; } return iret;}int main(){ int n = _countof(hex_table); int c = hex_to_decimal(const_cast<char*>("1E2E")); int a = strtol("1E2E",nullptr,16); return 0;}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。