strtol函数的使用
时间: 2024-09-06 10:03:13 浏览: 37
浅析C语言中strtol()函数与strtoul()函数的用法
5星 · 资源好评率100%
strtol函数是C语言标准库中的一个函数,用于将字符串转换成长整型(long int)数值。它的原型通常是这样的:
```c
long int strtol(const char *nptr, char **endptr, int base);
```
参数说明:
- `nptr`:指向待转换字符串的指针。
- `endptr`:是一个指向char类型的指针,函数会在处理完有效数字后更新到这个指针的位置,如果遇到非数字字符则会停止解析并返回NULL。
- `base`:表示输入字符串中数字的基数,可以是2~36之间的数,0通常被视为二进制,8视为八进制,10视为十进制,16视为十六进制。
使用示例:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
const char* str = "12345";
long int num;
char* end;
num = strtol(str, &end, 10); // 将字符串转换为十进制
if (end == str || *end != '\0') { // 检查是否已成功转换
printf("Invalid number format.\n");
} else {
printf("The converted number is: %ld\n", num);
}
return 0;
}
```
阅读全文