C 语言 Strtol() 函数

2024 年 8 月 28 日 | 3 分钟阅读

引言

C语言中的 strtol 函数 将一个 字符串 转换为一个 长整型

strtol 函数 跳过字符串开头的每一个空白字符,将其后的字符转换为数字,然后在遇到第一个非数字字符时终止。

语法

C语言中 strtol 函数 的语法如下

此函数使用的参数

nptr

指向将被转换为 长整型 的字符串的 指针

endptr

strtol 函数 用它来指定转换终止的位置。如果 endptr 不是一个 空指针,则 strtol 函数会改变 endptr,使其指向第一个未被转换的字符。

base

这是正在转换的基数。基数是数字的底数,必须介于 2 到 36 之间。除非转换后的数字以 O (表示八进制)、Ox (表示十六进制)OX (表示十六进制) 开头,否则如果基数为零,则该数字被认为是十进制。

返回值

strtol 函数 返回字符串的 长整型 表示。strtol 函数 跳过字符串开头的每一个空白字符,将其后的字符转换为数字,然后在遇到第一个非数字字符时终止。

如果 strtol 函数试图转换一个过大或过小的值,errno 变量 将被设置为 ERANGE。如果值 过大 无法 转换,函数将返回 LONG_MAX。如果输入数字 过小 无法 转换,函数将返回 LONG_MIN

强制性头文件

C语言中 strtol 函数所需的头文件是

参考

strtol 函数在C编程语言的以下版本中可用

strtol 示例

让我们看一个 strtol 函数如何在C程序中使用的示例

输出

此程序编译并执行后的输出是

123 decimal
19e hexadecimal