请问strtol() 的 参数值 是 如何 影响 程序运行结果的
请问 下面 这个 代码,strtol() 的 参数值 5 是 如何 影响 程序运行结果的,谢谢#include <stdio.h>
#include <stdlib.h>
int main()
{
char str = "2030300 This is test";
char *ptr;
long ret;
ret = strtol(str, &ptr, 5);
printf("数字(无符号长整数)是 %ld\n", ret);
printf("字符串部分是 %s.\n", ptr);
return(0);
}
long int strtol(const char *str, char **endptr, int base)
把参数 str 所指向的字符串根据给定的 base 转换为一个长整数(类型为 long int 型),base 必须介于 2 和 36(包含)之间,或者是特殊值 0
你给定的值会影响转换整数
举个例子,当base为2时,合法字符为‘0’,‘1’;
base为8时,合法字符为‘0’,‘1’,……‘7’;
base为10时,合法字符为‘0’,‘1’,……‘9’;
base 为16时,合法字符为‘0’,‘1’,……‘9’,‘a’,……‘f’;
base为24时,合法字符为‘0’,……‘9’,‘a’,……‘n’,
base为36时,合法字符为‘0’,……‘9’,‘a’,……‘z’;
但不区分大小写
页:
[1]