_ecvt

Dönüştüren bir double bir dize numarası.Bu işlev, daha güvenli bir sürümünü kullanılabilir; see _ecvt_s.

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

Parametreler

  • value
    Dönüştürülecek sayı.

  • count
    Depolanan basamak sayısı.

  • dec
    Ondalık noktasının konumunu depolanan.

  • sign
    Dönüştürülen sayının işareti.

Dönüş Değeri

_ecvtrakam dizesi için bir işaretçi döndürür; BOŞ bir hata oluştu.

Notlar

_ecvt İşlevi bir kayan noktalı sayı bir karakter dizesine dönüştürür.value Dönüştürülecek kayan noktalı sayı parametresidir.Bu işlev kadar depolar count rakamını value bir dize olarak ve boş karakter ('\0') ekler.Basamak sayısını value uzun count, alt sıra basamak yuvarlanır.Varsa daha az count basamak, dize sıfır koyarak azsa.

Toplam tarafından döndürülen basamak sayısı _ecvt değil aşılacak _CVTBUFSIZE.

Yalnızca rakam dizesi içinde saklanır.Ondalık noktası ve işareti konumunu value den alınan dec ve sign çağrısının.dec Parametresi işaret dizenin başı açısından ondalık noktasının konumunu veren bir tamsayı değeri için.İçinde 0 veya eksi tamsayı, ondalık noktasının ilk basamak solunda bulunan gösterir.sign Parametresi işaret dönüştürülmüş sayının işaretini belirten bir tamsayı.Tamsayı değeri 0 ise, pozitif bir sayıdır.Aksi takdirde, sayı negatif olur.

Arasındaki fark _ecvt ve _fcvt 'ın yorumu olan count parametresi._ecvtyorumlar count çıkış dizesi basamak sayısı olarak ise _fcvt yorumlar count ondalık basamak sayısı.

_ecvtve _fcvt tek bir statik olarak ayrılan arabelleğe dönüşümü için kullanın.Bu yordamlar için her arama sonucu önceki çağrı bozar.

Bu işlev parametreleri doğrular.dec Veya sign , null veya count 0'dır, geçersiz parametre işleyicisi, açıklandığı şekilde çağrılır Parametre Doğrulama.Yürütülmesine devam etmek için izin verilip verilmediğini errno ayarlamak EINVAL ve null döndürülür.

Gereksinimler

İşlev

Gerekli başlık

_ecvt

<stdlib.h>

Daha fazla uyumluluk bilgileri için bkz: Uyumluluk giriş.

Örnek

// crt_ecvt.c
// compile with: /W3
// This program uses _ecvt to convert a
// floating-point number to a character string.

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

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

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

.NET Framework Eşdeğeri

System::CONVERT::toString

Ayrıca bkz.

Başvuru

Veri Dönüştürme

Kayan Nokta Desteği

atof, _atof_l, _wtof, _wtof_l

_fcvt

_gcvt