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 değeri üretilen girdi karakter sayı olarak yorumlayan.Dönüş değeri 0.0 ise giriş türü bir değere dönüştürülemez.

Aralık dışı durumların hiçbirinde hatano ayarlamak ERANGE.Geçirilen parametre ise NULL, açıklandığı gibi geçersiz bir parametre işleyici çağrılır Parametre Doğrulama.Yürütmenin devam etmesine izin verilirse bu işlevler errno öğesini EINVAL olarak ayarlar ve 0 döndürür.

Notlar

Bu işlevler bir karakter dizesindeki çift duyarlıklı, kayan nokta değerine dönüştürür.

Giriş dizesi belirtilen türde bir sayısal değer olarak yorumlanabilecek bir karakter dizisidir.İşlev bir sayının parçası olarak tanıyamadığı ilk karakterde giriş dizesini okumayı durdurur.Bu karakter null karakteri ('\0' veya '\0' L) olabilir dizesi sonlandırılıyor.

str Bağımsız değişkeni atof ve _wtof aşağıdaki biçime sahiptir:

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

A whitespace , göz ardı edilir; boşluk veya sekme karakterlerden oluşur sign da artı (+) veya eksi (-); ve digits bir veya daha fazla ondalık basamak olur.Hiçbir rakam ondalık ayırıcıdan önce görünürse, en az bir ondalık noktadan sonra yer almalıdır.Ondalık basamak bir tanıtım harfini oluşan bir üssü tarafından takip edilebilir (d, D, e, veya E) ve isteğe bağlı olarak işaretli bir ondalık tamsayı.

_l sonekine sahip bu işlevlerin sürümleri, geçerli yerel ayarı yerine iletilen yerel ayar parametresini kullanmalarıdır.

Genel Metin Yordam Eşleşmeleri

TCHAR.H yordamı

_UNICODE & _MBCS tanımlanmamış

_MBCS tanımlanmış

_UNICODE tanımlanmış

_tstof

atof

atof

_wtof

_ttof

atof

atof

_wtof

Gereksinimler

Routine(s)

Gerekli başlık

atof

<Math.h> ve <stdlib.h>

_atof_l

<Math.h> ve <stdlib.h>

_wtof, _wtof_l

<string.h> veya <wchar.h>

Örnek

Bu program için sayısal değerler kullanarak dizeleri olarak saklanmış sayıları nasıl dönüştürülemeyeceğini göstermektedir 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 Desteği

Yerel Ayar

_ecvt

_fcvt

_gcvt

setlocale, _wsetlocale

_atodbl, _atodbl_l, _atoldbl, _atoldbl_l, _atoflt _atoflt_l