long int strtol(const char *str, char **endptr, int base)
优质
小牛编辑
136浏览
2023-12-01
描述 (Description)
C库函数long int strtol(const char *str, char **endptr, int base)根据给定的base将str字符串的初始部分转换为long int值,该值必须介于2和36之间,或者是特殊值0。
声明 (Declaration)
以下是strtol()函数的声明。
long int strtol(const char *str, char **endptr, int base)
参数 (Parameters)
str - 这是包含整数表示的字符串。
endptr - 这是对char *类型的对象的引用,其值由函数设置为数值后的str的下一个字符。
base - 这是基数,必须介于2和36之间,或者是特殊值0。
返回值 (Return Value)
此函数将转换后的整数作为long int值返回,否则返回零值。
例子 (Example)
以下示例显示了strtol()函数的用法。
#include <stdio.h>
#include <stdlib.h>
int main () {
char str[30] = "2030300 This is test";
char *ptr;
long ret;
ret = strtol(str, &ptr, 10);
printf("The number(unsigned long integer) is %ld\n", ret);
printf("String part is |%s|", ptr);
return(0);
}
让我们编译并运行上面的程序,它将产生以下结果 -
The number(unsigned long integer) is 2030300
String part is | This is test|