C/atof

< C

DeklaracjaEdytuj

double atof(const char * string)

Plik nagłówkowyEdytuj

stdlib.h

OpisEdytuj

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ść zwracanaEdytuj

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

UwagiEdytuj

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ładEdytuj

 /* 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