C库函数unsigned long int strtoul(const char *str, char **endptr, int base) 函数将一个无符号长整型值的字符串str中的初始部分根据给定的基数,必须在2和36(含),或特殊值0。
声明
以下是strtoul() 函数的声明。
unsigned long int strtoul(const char *str, char **endptr, int base)
参数
-
str -- 这个字符串包含一个无符号整数的表示法。
-
endptr -- 这是参考对象char *类型,其值设置功能str中的数值后,到下一个字符。
-
base -- 这是基数,必须是2和36之间的包容性,或者是特殊值0。
返回值
这个函数返回一个长整型值转换的整数。如果没有有效的转换可以执行,一个零值被返回。
例子
下面的例子演示了如何使用strtoul() 函数。
#include <stdio.h> #include <stdlib.h> int main() { char str[30] = "2030300 This is test"; char **ptr; long ret; ret = strtoul(str, ptr, 10); printf("The number(unsigned long integer) is %lu ", ret); printf("String part is |%s|", *ptr); return(0); }
让我们编译和运行上面的程序,这将产生以下结果:
The number(unsigned long integer) is 2030300 String part is | This is test|