位置:首页 > 高级语言 > C语言标准库 > strtol() - C语言库函数

strtol() - C语言库函数

C库函数 long int strtol(const char *str, char **endptr, int base) 字符串str中的初始部分转换为long int值,根据给定的基,必须是2和36(含)之间或者是特殊值0。

声明

以下是 strtol() 函数的声明。

long int strtol(const char *str, char **endptr, int base)

参数

  • str -- 这是一个字符串,它包含一个整数表示。

  • endptr -- 这是参考对象char *类型,其值设置功能str中的数值后,到下一个字符。

  • base -- 这是基,必须是2和36之间或者是特殊值0。

返回值

这个函数返回一个长整型值,否则返回零值转换的整数。

例子

下面的例子演示了如何使用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
", ret);
   printf("String part is |%s|", *ptr);

   return(0);
}

让我们编译和运行上面的程序,这将产生以下结果:

The number(unsigned long integer) is 2030300
String part is | This is test|