Aracılığıyla paylaş


atof, _atof_l, _wtof, _wtof_l

Bir dize için çift dönüştürün.

double atof(
   const char *str 
);
double _atof_l(
   const char *str,
   _locale_t locale
);
double _wtof(
   const wchar_t *str 
);
double _wtof_l(
   const wchar_t *str,
   _locale_t locale
);

Parametreler

  • str
    Dönüştürülecek dize.

  • locale
    Kullanılacak yerel ayarı.

Dönüş Değeri

Her işlev verir double giriş karakterleri sayı olarak yorumlama tarafından üretilir.Dönüş değeri 0.0 ise giriş türü bir değere dönüştürülemez.

Tüm aralık dışı durumlarda hatano ayarlamak ERANGE.Geçirilen parametre ise NULL, geçersizparametre işleyicisi, açıklandığı şekilde çağrılır Parametre doğrulama. Yürütülmesine devam etmek için izin verilmişse, bu işlevler kümesi errno için EINVAL ve 0 döndürür.

Notlar

Bu işlevler dönüştürmek bir çift duyarlıklı kayan nokta değeri için bir karakter dizesi.

Belirtilen türde bir sayısal değer yorumlanan karakter dizi giriş dizedir.Giriş dizesi bir parçası olarak tanıyamaz ilk karakterinde okuma işlev durdurur.null karakteri ('\0' veya '\0' l) bu karakter olabilir dize sona eriyor.

str bağımsız değişken atof ve _wtof aşağıdaki formvardır:

[whitespace] [sign] [digits] [.digits] [ {d | D | e | E }[sign]digits]

A whitespace göz ardı edilir; boşluk veya sekme karakterleri oluşur signya artı (+) veya eksi (-); ve digits bir veya daha fazla ondalık basamağı olan.Hiç basamak ondalık noktasından görünüyorsa, en az bir ondalık noktasından sonra yer almalıdır.ondalık basamak bir tanıtım harfi oluşan bir üs takip edilebilir (d, D, e, veya E) ve isteğe bağlı olarak imzalanmış ondalıkbirtamsayı.

Bu işlevler ile sürümlerini _l soneki yerine geçerli yerel ayargeçirilen yerel ayarparametre kullandıkları dışında aynı.

Genel metin yordamı eşlemeleri

TCHAR.H yordamına girildi

_UNICODE & _mbcs tanımlı değil

Tanımlanan _mbcs

Tanımlanan _UNICODE

_tstof

atof

atof

_wtof

_ttof

atof

atof

_wtof

Gereksinimler

Routine(s)

Gerekli üstbilgi

atof

<math.h> ve <stdlib.h>

_atof_l

<math.h> ve <stdlib.h>

_wtof, _wtof_l

<stdlib.h> veya <wchar.h>

Örnek

Bu program , dizeler olarak saklanmış sayılar sayısal değerlerini kullanarak nasıl dönüştürülebilir gösterir atof işlev.

// crt_atof.c
//
// This program shows how numbers stored as 
// strings can be converted to numeric
// values using the atof function.

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

int main( void )
{
    char    *str = NULL;
    double  value = 0;

    // An example of the atof function
    // using leading and training spaces.
    str = "  3336402735171707160320 ";
    value = atof( str );
    printf( "Function: atof( \"%s\" ) = %e\n", str, value );

    // Another example of the atof function
    // using the 'd' exponential formatting keyword.
    str = "3.1412764583d210";
    value = atof( str );
    printf( "Function: atof( \"%s\" ) = %e\n", str, value );

    // An example of the atof function
    // using the 'e' exponential formatting keyword.
    str = "  -2309.12E-15";
    value = atof( str );
    printf( "Function: atof( \"%s\" ) = %e\n", str, value );

}
  

.NET Framework Eşdeğeri

Ayrıca bkz.

Başvuru

Veri Dönüştürme

Kayan nokta türü desteği

Yerel ayar

_ecvt

_fcvt

_gcvt

setlocale, _wsetlocale

_atodbl, _atodbl_l, _atoldbl, _atoldbl_l, _atoflt _atoflt_l