C/atof

Z Wikibooks, biblioteki wolnych podręczników.
< C(Przekierowano z Programowanie:C:atof)
Przejdź do nawigacji Przejdź do wyszukiwania

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