C语言stdlib头文件(stdlib.h)中strtoll函数的用法及代码示例。
用法:
long long int strtoll (const char* str, char** endptr, int base);
将字符串转换为long long整数
long long int
。如果endptr不是一个空指针,该函数还会设置endptr指向数字后的第一个字符。该函数的运作方式类似于strtol解释字符串,但产生类型的数字
long long int
(参考strtol有关解释过程的详细信息)。参数
- str
- C-string以整数表示。
- endptr
- 引用类型的对象
char*
,其值由函数设置为中的下一个字符str数值之后。
此参数也可以是空指针,在这种情况下不使用。 - base
- 确定有效字符及其解释的数字基数(基数)。
如果是这样0
,所用的底数由序列中的格式决定(请参见strtol有关详细信息)。
返回值
成功后,函数将转换后的整数返回为long long int
值。如果无法执行有效的转换,则返回零值(
0LL
)。如果读取的值超出可表示的值范围达
long long int
,函数返回LLONG_MAX或者LLONG_MIN(在<climits>), 和errno被设定为ERANGE。示例
/* strtoll example */
#include <stdio.h> /* printf, NULL */
#include <stdlib.h> /* strtoll */
int main ()
{
char szNumbers[] = "1856892505 17b00a12b -01100011010110000010001101100 0x6fffff";
char* pEnd;
long long int lli1, lli2, lli3, lli4;
lli1 = strtoll (szNumbers, &pEnd, 10);
lli2 = strtoll (pEnd, &pEnd, 16);
lli3 = strtoll (pEnd, &pEnd, 2);
lli4 = strtoll (pEnd, NULL, 0);
printf ("The decimal equivalents are: %lld, %lld, %lld and %lld.\n", lli1, lli2, lli3, lli4);
return 0;
}
可能的输出:
The decimal equivalents are: 1856892505, 6358606123, -208340076 and 7340031 |
相关用法
- C语言 atof用法及代码示例
- C语言 atoi用法及代码示例
- C语言 atol用法及代码示例
- C语言 atoll用法及代码示例
- C语言 strtod用法及代码示例
- C语言 strtof用法及代码示例
- C语言 strtol用法及代码示例
- C语言 strtold用法及代码示例
- C语言 strtoul用法及代码示例
- C语言 strtoull用法及代码示例
- C语言 rand用法及代码示例
- C语言 srand用法及代码示例
- C语言 calloc用法及代码示例
- C语言 free用法及代码示例
- C语言 malloc用法及代码示例
- C语言 realloc用法及代码示例
- C语言 abort用法及代码示例
- C语言 atexit用法及代码示例
- C语言 at_quick_exit用法及代码示例
- C语言 exit用法及代码示例
- C语言 getenv用法及代码示例
- C语言 quick_exit用法及代码示例
- C语言 system用法及代码示例
- C语言 _Exit用法及代码示例
- C语言 bsearch用法及代码示例
- C语言 qsort用法及代码示例
- C语言 abs用法及代码示例
- C语言 div用法及代码示例
- C语言 labs用法及代码示例
- C语言 ldiv用法及代码示例
- C语言 llabs用法及代码示例
- C语言 lldiv用法及代码示例
- C语言 mblen用法及代码示例
- C语言 mbtowc用法及代码示例
- C语言 wctomb用法及代码示例
- C语言 wcstombs用法及代码示例
注:本文由纯净天空筛选整理自C标准库大神的英文原创作品 C strtoll function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。