C语言 将十六进制字符串转为十六进制数 (二进制、十进制都适用)
2024-10-01 10:12:57
主要利用 long int strtol(const char *nptr,char **endptr,int base); 函数
函数说明:
参数base范围从2至36,或0。参数base代表采用的进制方式,如base值为10则采用10进制,若base值为16则采用16进制等。当base值为0时则是采用10进制做转换,但遇到如’0x’前置字符则会使用16进制做转换、遇到’0’前置字符而不是’0x’的时候会使用8进制做转换。一开始strtol()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,再遇到非数字或字符串结束时('\0')结束转换,并将结果返回。若参数endptr不为NULL,则会将遇到不合条件而终止的nptr中的字符指针由endptr返回;若参数endptr为NULL,则会不返回非法字符串。这里主要是两个参数:nptr(要转换的字符串)、base(代表采用的进制方式)
//例子
#include <stdio.h>
#include <stdlib.h>
void main()
{
char* p = "0x1b";
char* str;
long i = strtol(p, &str, );
printf("%d\r\n", i);
} //输出值为 27
最新文章
- C#委托和事件
- ORACLE数据库对比表结构
- vs2013update4 vs-mda-remote cordova真机测试ios
- 19.python笔记之Rabbitmq
- http://www.mxchip.com/talk/news/jishuwenzhang/2014-09-11/67.html
- mjpg-streamer on raspberrypi
- css包含块containing block
- elk集成安装配置
- .net应用程序中添加chm帮助文档打开显示此程序无法显示网页问题
- oracle导入命令,记录一下
- Python数据采集——提取页面内容的几种手段
- swiper2 swiper-slide 之间的间距调整
- muduo-ThreadLocal实现细节——阻止销毁未定义对象
- 微信小程序使用wxParse,解决图片显示路径问题
- springmvc拦截器匹配规则
- centos关闭邮件提醒
- vue中解决跨域问题
- Python 基础 Python是什么
- maven包下载失败
- LCA 算法(一)ST表
热门文章
- ubuntu上的arm-elf-tools -20040427.sh 下载及安装问题的解决
- Python面向对象之静态方法、静态方法与类方法
- Github+Jekyll 搭建个人网站详细教程
- 【ACM-ICPC 2018 南京赛区网络预赛 L】Magical Girl Haze
- cogs 106. [NOIP2003] 加分二叉树(区间DP)
- Mysql第四天 数据库设计
- 刚接触Joomla,写一下瞎折腾的初感受~
- unknown argument: &;#39;-websockets&;#39;
- win10 bcdedit加入vhdx启动
- [jzoj 5661] 药香沁鼻 解题报告 (DP+dfs序)