当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C语言 wcstoll用法及代码示例


C语言wchar头文件(wchar.h)中wcstoll函数的用法及代码示例。

用法:

long long int strtoll (const wchar_t* str, wchar_t** endptr, int base);
将宽字符串转换为长整型整数
解析C宽字符串str将其内容解释为指定内容的整数根据,以long long int价值。如果endptr不是空指针,该函数还会设置endptr指向数字后的第一个字符。

这是宽字符等价于strtoll(<cstdlib>),翻译str以同样的方式。

参数

str
以整数表示的C宽字符串。
endptr
引用类型的对象wchar_t*,其值由函数设置为中的下一个字符str数值之后。
此参数也可以是空指针,在这种情况下不使用。

返回值

成功后,函数将转换后的整数返回为long int值。
如果无法执行有效的转换,则返回零值(0LL)。
如果读取的值超出可表示的值范围达long long int,函数返回LLONG_MAX或者LLONG_MIN(在<climits>), 和errno被设定为ERANGE

示例

/* wcstoll example */
#include <wchar.h>

int main ()
{
  wchar_t wsNumbers[] = L"1856892505 17b00a12b -01100011010110000010001101100 0x6fffff";
  wchar_t * pEnd;
  long long int lli1, lli2, lli3, lli4;
  lli1 = wcstoll (wsNumbers,&pEnd,10);
  lli2 = wcstoll (pEnd,&pEnd,16);
  lli3 = wcstoll (pEnd,&pEnd,2);
  lli4 = wcstoll (pEnd,NULL,0);
  wprintf (L"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标准库大神的英文原创作品 C wcstoll function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。