_fcvt

将一个浮点数转换为字符串。 此功能的一种较为安全的版本可用; _fcvt_s参见。

char *_fcvt( 
   double value,
   int count,
   int *dec,
   int *sign 
);

参数

  • value
    将转换的数字。

  • count
    小数点后数字的位数。

  • dec
    为内存的指针小数点位置。

  • sign
    对存储的符号指示的指针。

返回值

_fcvt 返回指向数值字符串,在错误的 NULL。

备注

_fcvt 函数将浮点数转换为 null 终止的字符串)。 value 参数是要转换的浮点数。 _fcvt 存储 value 数字为字符串并追加 null 字符 (“\ 0 ")。 count 参数指定在以后要存储的数量。 多余数字被舍入到 count 位置。 如果小于精度 count 数字有,该字符串填充零。

_fcvt 返回的总数不会超过 _CVTBUFSIZE。

仅可在该字符串存储。 位置),并 value 的符号可以从 dec 和符号获取在调用之后。 dec 参数指向整数值;此整数值指定位置小数点有关该字符串的开头。 零或负整数值指示在第一个数字的小数点集。 该参数 sign 指向指示 value的符号整数。 该整数设置为 0,则 value 为正数的和设置为非零的数字,如果 value 为负数。

在 _ecvt 和 _fcvt 之间的差异。 count 参数的解释。 _ecvt 解释 count ,当数字的总数在输出字符串的,因此,而 _fcvt 解释 count 作为数字个数在以后小数点。

_ecvt 和 _fcvt 为将使用一个静态分配的缓冲区。 每次调用这些实例之一销毁结果的前一个调用。

此功能验证其参数。 如果 dec 或 sign 为 null,或者 count 为 0,无效参数调用处理程序,如 参数验证所述。 如果执行允许继续, errno 设置为 EINVAL ,并返回 NULL。

要求

功能

必需的头

_fcvt

stdlib.h

有关更多兼容性信息,请参见中介绍的 兼容性

示例

// crt_fcvt.c
// compile with: /W3
// This program converts the constant
// 3.1415926535 to a string and sets the pointer
// buffer to point to that string.

#include <stdlib.h>
#include <stdio.h>

int main( void )
{
   int  decimal, sign;
   char *buffer;
   double source = 3.1415926535;

   buffer = _fcvt( source, 7, &decimal, &sign ); // C4996
   // Note: _fcvt is deprecated; consider using _fcvt_s instead
   printf( "source: %2.10f   buffer: '%s'   decimal: %d   sign: %d\n",
            source, buffer, decimal, sign );
}
  

.NET Framework 等效项

系统:: 转换:: ToString

请参见

参考

数据转换

浮点支持

atof, _atof_l, _wtof, _wtof_l

_ecvt

_gcvt