linux中字符串转换函数 simple_strtoul
Linux内核中提供的一些字符串转换函数:
lib/vsprintf.c
- 1. unsigned long long simple_strtoull(const char *cp, char **endp, unsigned int base)
- 2. unsigned long simple_strtoul(const char *cp, char **endp, unsigned int base)
- 3. long simple_strtol(const char *cp, char **endp, unsigned int base)
- 4. long long simple_strtoll(const char *cp, char **endp, unsigned int base)
- 5. int strict_strtoul(const char *cp, unsigned int base, unsigned long *res)
- 6. int strict_strtol(const char *cp, unsigned int base, long *res)
- 7. int strict_strtoull(const char *cp, unsigned int base, unsigned long long *res)
- 8. int strict_strtoll(const char *cp, unsigned int base, long long *res)
- 9. int sprintf(char *buf, const char *fmt, ...)
- 10. int snprintf(char *buf, size_t size, const char *fmt, ...)
- 11. int sscanf(const char *buf, const char *fmt, ...)
unsigned long long simple_strtoull(const char *cp, char **endp, unsigned int base)
功能:将一个字符串转换成unsigend long long型数据。
返回:返回转换后数据。
参数:cp指向字符串的开始,endp指向分析的字符串末尾的位置,base为要用的基数(进制数),base为0表示通过cp来自动判断基数,函数自动可识别的基数:‘0x’表示16进制,‘0’表示8进制,其它都认定为10进制。函数可转换成数字的有效字符为:[0,f]。举例:cp = “0x12str”,base = 0,则返回unsigned long long为18,*endp = “str”。 参数下同。
- static ssize_t led_brightness_store(struct device *dev,
- struct device_attribute *attr, const char *buf, size_t size)
- {
- struct led_classdev *led_cdev = dev_get_drvdata(dev);
- ssize_t ret = -EINVAL;
- char *after;
- unsigned long state = simple_strtoul(buf, &after, 10);
- size_t count = after - buf;
- if (isspace(*after))
- count++;
- if (count == size) {
- ret = count;
- if (state == LED_OFF)
- led_trigger_remove(led_cdev);
- led_set_brightness(led_cdev, state);
- }
- return ret;
- }
unsigned long simple_strtoul(const char *cp, char **endp, unsigned int base)
功能:将一个字符串转换成unsigend long型数据。
返回:返回转换后数据。
int strict_strtoul(const char *cp, unsigned int base, unsigned long *res)
功能:将一个字符串转换成unsigend long型。
返回:转换成功返回0,否则返回负。res指向转换后的unsigned long数据。
说明:该函数对cp指向的字符串严格要求,cp指向的字符串必须为真正的unsigned long形式的字符串。字符串必须以“0x”、“0”、[0,f]开始,中间全部为有效的字符[0,f],否则返回为负。它会处理字符串最后的“\n”字符。下同
long long simple_strtoll(const char *cp, char **endp, unsigned int base)
功能:将一个字符串转换成sigend long long型。
返回:返回转换后数据。
int strict_strtol(const char *cp, unsigned int base, long *res)
功能:将一个字符串转换sigend long型。
返回:转换成功返回0,否则返回负。res指向转换后的signed long数据。
int strict_strtoull(const char *cp, unsigned int base, unsigned long long *res)
功能:将一个字符串转换unsigend long long型。
返回:转换成功返回0,否则返回负。res指向转换后的unsigned long long数据。
int strict_strtoll(const char *cp, unsigned int base, long long *res)
功能:将一个字符串转换sigend long long型。
返回:转换成功返回0,否则返回负。res指向转换后的signed long long数据。
int sprintf(char *buf, const char *fmt, ...)
功能:格式化输出字符串,类似于printf,只是用字符串buf作为输出对象。
返回:返回写入buf字符串的字符个数。
int snprintf(char *buf, size_t size, const char *fmt, ...)
功能:格式化输出字符串,类似于printf,只是用字符串buf作为输出对象。其中size为buf的大小(包括‘\0’字符)。
返回:返回写入buf字符串的字符个数。
经典:
int sscanf(const char *buf, const char *fmt, ...)
功能:格式化输入字符串,类似于scanf,只是用字符串buf作为输入对象。
返回:返回读取buf字符串的字符个数。
lib/kasprintf
- char *kasprintf(gfp_t gfp, const char *fmt, ...)
<textarea style="display: none;" readonly="readonly" name="code" class="cpp">char *kasprintf(gfp_t gfp, const char *fmt, ...)</textarea>
char *kasprintf(gfp_t gfp, const char *fmt, ...)
功能:格式化输出字符串到一段且gfp分配的内存中。
返回:返回指向该内容的字符串指针。
linux中字符串转换函数 simple_strtoul的更多相关文章
- linux中字符串转换函数 simple_strtoul【转】
转自:http://blog.csdn.net/tommy_wxie/article/details/7480087 Linux内核中提供的一些字符串转换函数: lib/vsprintf.c [htm ...
- 【Linux C中文函数手册】 字符串转换函数
字符串转换函数 1)atof 将字符串转换成浮点型数 相关函数 atoi,atol,strtod,strtol,strtoul表头文件 #include <stdlib.h>定义函数 do ...
- Oracle中的转换函数
Oracle中的转换函数有三个,分别为to_char(),to_date(),to_number() 1.to_char()的用法 格式化当前的日期时间 select sysdate,to_char( ...
- JavaScript中字符串分割函数split用法实例
这篇文章主要介绍了JavaScript中字符串分割函数split用法,实例分析了javascript中split函数操作字符串的技巧,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了JavaSc ...
- libs/tools.js stringToDate dateToString 日期字符串转换函数
libs/tools.js stringToDate dateToString 日期字符串转换函数 import { stringToDate } from '@/libs/tools.js' e ...
- VC++编程中常用的字符串转换函数
VC++编程中经常遇到不同编码编码的字符串之间需要转换的情况,以下简单提供几个不同编码字符串之间的转换函数: ANSI 字符串和Unicode字符串之间的转换 //Convert wide char ...
- T-SQL语句中的转换函数
书接上回 前面讲了聚合函数.字符串函数 今天一起来看下转换函数 首先是 值类型转换 ),degree) 在C#里面是convert,现在在SQL中也是他,convert(转换类型,被转换列)from ...
- Python中的转换函数
https://www.cnblogs.com/wuxiangli/p/6046800.html python中的字符数字之间的转换函数 int(x [,base ]) 将x转换为 ...
- JavaScript中字符串截取函数slice()、substring()、substr()
在js中字符截取函数有常用的三个slice().substring().substr()了,下面我来给大家介绍slice().substring().substr()函数在字符截取时的一些用法与区别吧 ...
随机推荐
- C# 获取Enum 描述和值集合
//获取枚举的值 public static IEnumerable<T> GetEnumValues<T>() where T : struct { T[] values = ...
- MEF编程模型
Contract由Contract name和Contract type组成,Contract两个参数可以省略可以implicit也可以explicit,implicit时name和type会自动推断 ...
- 获取XML里指定的节点内容信息
HttpContent bw = new StringContent(StrXml, Encoding.UTF8, "application/Xml"); var Msg = aw ...
- css下拉菜单写法
网页导航栏的下拉效果,通过div框的显示和隐藏实现. <html> <head> <meta charset="UTF-8"> <titl ...
- 【PLSQL】游标
Oracle中的SQL在执行时需要分配一块内存区域,这块内存区域叫做上下文区. 上下文区中记录了SQL语句的处理信息,这些信息包括:查询返回的数据行.查询所处理的数据的行号.指向共享池中的已分析的SQ ...
- Java_Web之神奇的Ajax
为什么使用Ajax? 无刷新:不刷新整个页面,只刷新局部 无刷新的好处 提供类似C/S的交互效果,操作更方面 只更新部分页面,有效利用带宽 什么是Ajax? XMLHttpRequest常用方 ...
- JavaScript小技巧总结
JavaScript是一种脚本语言: 语法类似于常见的高级语言 脚本语言,不需要编译就可以由解释器直接运行 变量松散定义 面向对象 JSON是一种数据交换格式,而JSONP是JSON的一种使用模式,是 ...
- HTTP协议探索之Cache-Control
缓存的存与用的控制 Cache-Control指定了请求和响应遵循的缓存机制.好的缓存机制可以减少对网络带宽的占用,可以提高访问速度,提高用户的体验,还可以减轻服务器的负担. Cache-Contro ...
- python 生成测试报告并发送邮件
前言: 使用unittest编写自动化测试脚本,执行脚本后可以很方便看到测试用例的执行情况. 但如果想向领导汇报工作,就需要提供更直观的测试报告. 思路: 使用unittest编写测试用例,HTMLT ...
- Android 性能测试初探(四)
书接上文 Android 性能测试初探(三) 自从 cpu及内存后,GPU 这个词对于 PC 性能测试者也不陌生了,什么 3Dmax,安兔兔之类的第三方软件让 GPU 在移动端性能测试领域都知晓,但对 ...