strtoul()函数
strtoul()函数是C语言中的一个字符串转换成无符号长整型数的函数。它可以把一个字符串转换成一个无符号长整型数,并且可以指定进制,返回值是转换后的无符号长整型数。
用法
strtoul()函数的用法如下:
unsigned long int strtoul(const char *nptr, char **endptr, int base);
- nptr:指向要转换的字符串。
- endptr:指向一个指针,指针指向nptr字符串中一个转换的字符。
- base:指定要转换的进制,可以是2~36之间的任意值,如果base的值为0,则根据字符串前缀来判断是哪种进制,如果是0x开头,则表示16进制;如果是0开头,则表示8进制;如果没有前缀,则表示10进制。
strtoul()函数的返回值是无符号长整型数,如果转换出错,则返回ULONG_MAX,该值是定义在limits.h头文件中的。
示例
下面的示例演示了strtoul()函数的用法:
#include#include int main() { char *str = "12345"; char *endptr; unsigned long int num; num = strtoul(str, &endptr, 10); printf("num = %lu\n", num); printf("endptr = %s\n", endptr); return 0; }
上面的程序会输出:
num = 12345 endptr =