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)
strtol函數的用法 atof, atoi, atol, strtod, strtoul的更多相关文章
- 字符串转换atof atoi atol gcvt strtod strtol strto ul toascii tolower toupper
atof(将字符串转换成浮点型数) 相关函数 atoi,atol,strtod,strtol,strtoul 表头文件 #include <stdlib.h> 定义函数 double at ...
- atoi atol strtod strtol strtoul _gcvt
如果以下函数,您在使用的时候,总是输出一个莫名的值,是因为您忘记了引用头文件 #include <stdlib.h> 1- atoi int atoi(const char *nptr); ...
- WMSYS.WM_CONCAT 函數的用法
select t.rank, t.Name from t_menu_item t; 10 CLARK 10 KING 10 MILLER 20 ADAMS 20 FORD ...
- Oracle数据库合并行记录,WMSYS.WM_CONCAT 函數的用法
Sql代码 select t.rank, t.Name from t_menu_item t; 10 CLARK 10 KING 10 MILLER 20 ADAMS 20 F ...
- oracle 10g WMSYS.WM_CONCAT 函數的用法
select t.rank, t.Name from t_menu_item t; 10 CLARK 10 KING 10 MILLER 20 ADAMS 20 FORD 20 JONES 20 SC ...
- 函数atof,atoi,atol,strtod,strtol,strtoul 描述
函数atof,atoi,atol,strtod,strtol,strtoul atof(将字串转换成浮点型数) 相关函数 atoi,atol,strtod,strtol,strtoul表头文件 #in ...
- oracle decode(nvl(estimate_qty,0),0,1,estimate_qty) 函數
oracle decode(nvl(estimate_qty,0),0,1,estimate_qty) 函數
- js匿名函數
(function($){})(jquery) == (function($){})(jQuery) 实际上是匿名函数 用于存放开发插件的代码 作用(非常有用): 这种写法的最大好处是形成闭包.在(f ...
- Math.Round函數
Math.Round這個函數的解釋是將值按指定的小數位數舍入,但並不就是四捨五入.這種舍入有時稱為就近舍入或四舍六入五成雙 其實在 VB, VBScript, C#, J#, T-SQL 中 Roun ...
随机推荐
- Android面试收集录 Android布局
1.请说出Android中的五种布局,并介绍作用? FrameLayout(堆栈布局),层叠方式显示,类似于PhotoShop上的层叠图层. LinearLayout(线性布局),将视图以水平或者垂直 ...
- android:windowBackground 和 Android:background 的区别
通过问别人,我知道了android:windowBackground 和 Android:background的区别 android:windowBackground 一般用于activity启动的时 ...
- java从数据库读取菜单,递归生成菜单树
首先看一下菜单的样子 根据这个样子我们定义菜单类 public class Menu { // 菜单id private String id; // 菜单名称 private String name; ...
- hadoop中节点上的nodemanager一直启动不起来
当我们启动Hadoop集群的时候,发现有一台机器的nodemanager启动后自动关闭, 查看日志的时候发现有错误:yarn-root-nodemanager-log 解决办法: netstat a ...
- Thread-local storage (TLS)
线程存储原理:为变量在每一个现存的线程里分配一个实例,需要处理器支持,并不是所有都支持!支持全局的,静态的变量,但不支持局部变量. 关键字 __thread __thread int i; e ...
- Server Message Block
Question: Server Message Block文件共享存储虚拟机的优势是什么? Answer:微软在Windows Server 2012和Hyper-V 3.0中引进了SMB文件共享存 ...
- 【HTML&CSS】 第一章:DTD文档声明
<!DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前. <!DOCTYPE> 声明不是 HTML 标签:它是指示 web 浏览器关 ...
- 实现jQuery的$.extend方法
var o1 = { hello : 1, old : 555 }, o2 = { abc : 55555555, hello : 2, fun : function() { alert(111); ...
- 《数据结构》C++代码 邻接表与邻接矩阵
上一篇“BFS与DFS”写完,突然意识到这个可能偏离了“数据结构”的主题,所以回来介绍一下图的存储:邻接表和邻接矩阵. 存图有两种方式,邻接矩阵严格说就是一个bool型的二维数组,map[i][j]表 ...
- Canvas 剪切图片
/** * 剪切图像 */ function initDemo8(){ var canvas = document.getElementById("demo8"); if (!ca ...