strtol函數的用法 atof, atoi, atol, strtod, strtoul
相关函数: atof, atoi, atol, strtod, strtoul
表头文件: #include <stdlib.h>
定义函数: long int strtol(const char *nptr, char **endptr, int base)
函数说明: strtol()会将参数nptr字符串根据参数base来转换成长整型数。参数
base范围从2至36,或0。参数base代表采用的进制方式,如base值为10则采用10
进制(字符串以10进制表示),若base值为16则采用16进制(字符串以16进制表示)
。当base值为0时则是采用10进制做转换,但遇到如''0x''前置字符则会使用16进
制做转换。一开始strtol()会扫描参数nptr字符串,跳过前面的空格字符,直到
遇上数字或正负符号才开始做转换,再遇到非数字或字符串结束时(''\0'')结束
转换,并将结果返回。若参数endptr不为NULL,则会将遇到不合条件而终止的
nptr中的字符指针由endptr返回。
返回值: 返回转换后的长整型数,否则返回ERANGE并将错误代码存入errno中
。
附加说明: ERANGE指定的转换字符串超出合法范围。
将字符串a, b, c 分别采用10, 2, 16进制转换成数字
------------------------------------------------
#include <stdlib.h>
#include <stdio.h>
main()
{
char a[] = "100";
char b[] = "100";
char c[] = "ffff";
printf("a = %d\n", strtol(a, NULL, 10)); //100
printf("b = %d\n", strtol(b, NULL, 2)); //4
printf("c = %d\n", strtol(c, NULL, 16)); //65535
}
"100" ---> 100 (Dec) ---> 100 (Dec)
"100" ---> 100 (BIN) ---> 4 (Dec)
"ffff"---> ffff(Hex) ---> 65535(Dec)
最新文章
- Struts2 contentType属性列表
- 理解python的with语句
- 北京易信软科信息技术有限公司 问卷调查管理系统V2.0
- 23. javacript高级程序设计-数据存储
- PHP-字符串过长不用担心
- Centos环境下部署游戏服务器-编译
- Xcode各版本官方下载及百度云盘下载, Mac和IOS及Xcode版本历史.
- [Android学习笔记]获取view的尺寸和坐标
- 笨办法用js屏蔽被http劫持的浮动广告
- sql处理null值
- 华为oj之求int型正整数在内存中存储时1的个数
- MySQL 压缩文件安装遇到的问题及解决方案
- 微信小程序原生开发简介
- 机器学习超参数优化算法-Hyperband
- Curl追踪请求延时问题
- Oracle中rownum和rowid的理解
- check nginx配置文件错误:[emerg]: getpwnam(“nginx”) failed
- pri 知识点
- CI框架 -- URL
- Centos 克隆后端口eth1怎么改回eth0