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


C语言 wcstod用法及代码示例


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

用法:

double wcstod (const wchar_t* str, wchar_t** endptr);
将宽字符串转换为双精度
解析C宽字符串str将其内容解释为浮点数,并将其值返回为double。如果endptr不是空指针,该函数还会设置endptr指向数字后的第一个字符。

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

参数

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

返回值

成功后,函数将转换后的浮点数作为类型的值返回double
如果无法执行有效的转换,则该函数返回零(0.0)。
如果正确的值超出该类型可表示的值的范围,则为正或负HUGE_VAL返回,并且errno被设定为ERANGE
如果正确的值将导致下溢,则该函数将返回一个其大小不大于最小归一化正数的值(某些库实现也可能设置为errnoERANGE在这种情况下)。

示例

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

int main ()
{
  wchar_t szOrbits[] = L"365.24 29.53";
  wchar_t * pEnd;
  double d1, d2;
  d1 = wcstod (szOrbits,&pEnd);
  d2 = wcstod (pEnd,NULL);
  wprintf (L"The moon completes %.2f orbits per Earth year.\n", d1/d2);
  return 0;
}


输出:

The moon completes 12.37 orbits per Earth year.

相关用法


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