linux中字符串转换函数 simple_strtoul
来源:互联网 发布:淘宝登录网页无法打开 编辑:程序博客网 时间:2024/05/17 04:04
Linux内核中提供的一些字符串转换函数:
lib/vsprintf.c
unsigned long long simple_strtoull(const char *cp, char **endp, unsigned int base) unsigned long simple_strtoul(const char *cp, char **endp, unsigned int base) long simple_strtol(const char *cp, char **endp, unsigned int base) long long simple_strtoll(const char *cp, char **endp, unsigned int base) int strict_strtoul(const char *cp, unsigned int base, unsigned long *res) int strict_strtol(const char *cp, unsigned int base, long *res) int strict_strtoull(const char *cp, unsigned int base, unsigned long long *res) int strict_strtoll(const char *cp, unsigned int base, long long *res) int sprintf(char *buf, const char *fmt, ...) int snprintf(char *buf, size_t size, const char *fmt, ...) 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, ...)
char *kasprintf(gfp_t gfp, const char *fmt, …)
功能:格式化输出字符串到一段且gfp分配的内存中。
返回:返回指向该内容的字符串指针。
转载来源:http://www.cnblogs.com/pengdonglin137/articles/4125746.html
- linux中字符串转换函数 simple_strtoul
- linux中字符串转换函数 simple_strtoul
- linux中字符串转换函数simple_strtoul
- linux中字符串转换函数 simple_strtoul
- linux内核中字符串转换函数 simple_strtoul
- linux中字符串转换函数 simple_strtoul
- linux中字符串转换函数 simple_strtoul
- linux中字符串转换函数 simple_strtoul
- linux中字符串转换函数 simple_strtoul
- linux中字符串转换函数 simple_strtoul
- linux字符串转换函数 simple_strtoul
- Linux字符串转换函数 simple_strtoul
- linux中字符串转换函数
- linux中字符串转换函数 simpl…
- linux中字符串转换函数 simpl…
- Linux内核中提供的一些字符串转换函数
- Linux内核字符串转换函数
- Linux字符串转换函数汇总
- 加载与卸载事件
- 使用Drupal Console,出现Failed to decode response: zlib_decode(): data error Retrying with degraded mode
- 获得焦点与失去焦点事件
- 失去焦点修改事件
- thinkphp5实践第2章——创建后台模型
- linux中字符串转换函数 simple_strtoul
- iOS 与Android对比学开篇
- 表单提交的验证
- Unity Shader 内置固有函数
- 题目1019:简单计算器
- onbounce事件
- Cas Server-二次开发(重写源码)
- HTML-CSS基础入门-第十九天(CSS-开发工具)
- onstart事件