Przejdź do zawartości

C/atof

Z Wikibooks, biblioteki wolnych podręczników.
< C

Deklaracja

[edytuj]
double atof(const char * string)

Plik nagłówkowy

[edytuj]
stdlib.h

Opis

[edytuj]
Funkcja jako argument pobiera liczbę w postaci ciągu znaków ASCII, a następnie zwraca jej wartość w formacie double (format zmiennoprzecinkowy). Argument może poprzedzać dowolna liczba białych znaków (spacje, tabulatory itp.) oraz znak (plus (+) lub minus (-)). Funkcja atof() kończy wczytywać znaki w momencie napotkania jakiegokolwiek znaku, który nie jest cyfrą, kropką bądź znakiem e, bądź E.

Wartość zwracana

[edytuj]
Przekształcona liczba, w przypadku gdy ciąg nie zawiera cyfr zwracana jest wartość 0.

Uwagi

[edytuj]
Znak musi bezpośrednio poprzedzać liczbę, czyli możliwy jest zapis "-2.333", natomiast próba potraktowania funkcją atof ciągu "- 2.333" skutkuje zwracaną wartością 0.

Przykład

[edytuj]
 /* Przyklad uzycia funkcji atof - obliczanie sinusa */
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main ()
{
    double n, m;
    char szInput [] = "45.5";
    n = atof (szInput);
    m = sin (n*M_PI/180);
    printf ( "sinus z %lf stopni wynosi %lf\n" , n, m );
    return 0;
}
sinus z 45.500000 stopni wynosi 0.713250

Zobacz też

[edytuj]
atoi, atol