C/atof
Wygląd
< C
Deklaracja
[edytuj]- double atof(const char * string)
Plik nagłówkowy
[edytuj]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