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


C语言 wcstol用法及代码示例


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

用法:

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

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

参数

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

返回值

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

示例

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

int main ()
{
  wchar_t wsNumbers[] = L"2001 60c0c0 -1101110100110100100000 0x6fffff";
  wchar_t * pEnd;
  long int li1, li2, li3, li4;
  li1 = wcstol (wsNumbers,&pEnd,10);
  li2 = wcstol (pEnd,&pEnd,16);
  li3 = wcstol (pEnd,&pEnd,2);
  li4 = wcstol (pEnd,NULL,0);
  wprintf (L"The decimal equivalents are: %ld, %ld, %ld and %ld.\n", li1, li2, li3, li4);
  return 0;
}


输出:

The decimal equivalents are: 2001, 6340800, -3624224 and 7340031

相关用法


注:本文由纯净天空筛选整理自C标准库大神的英文原创作品 C wcstol function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。