Pagina 1 di 1
[C] Implementazione di atof
Inviato: martedì 1 novembre 2005, 12:26
da scorpio2002
Ciao a tutti!
Sto imparando un po' di C e uso come testo di riferimento il Kernighan Ritchie che mi è stato consigliato da molti. Adesso sono arrivato al capitolo 4 dove viene illustrato un algoritmo che serve a valutare una stringa polacca inversa. All'inizio non riuscivo a capire perchè l'algoritmo, sulla mia macchina, desse dei risultato sballati. Poi ho scoperto una cosa interessante...
Non so per quale motivo, ma l'implementazione della funzione "atof" per convertire da stringa a float presente in math.h non funziona correttamente e restituisce un valore sballato.
Facendo altre ricerche, ho visto che la funzione "atof" è presente anche nella libreria stdlib.h e, questa volta, l'implementazione è corretta.
???Mi chiedo allora a cosa serva la atof della libreria math.h ?!? ???
Ciao,
Donato
Re: [C] Implementazione di atof
Inviato: domenica 6 novembre 2005, 10:58
da Uncino
Ciao,
e´ da molto che non uso il C ma credo di ricordare che ¨atof¨ sia definita in stdlib.h e non in math.h
Uncino
Re: [C] Implementazione di atof
Inviato: domenica 6 novembre 2005, 12:22
da twilight
Confermo l'affermazione di Uncino:
Codice: Seleziona tutto
NAME
atof - convert a string to a double
SYNOPSIS
#include <stdlib.h>
double atof(const char *nptr);
DESCRIPTION
.....
ciao
Re: [C] Implementazione di atof
Inviato: domenica 6 novembre 2005, 15:34
da 81joe81
Sul sito ufficiale di C++ in effetti atof è definita sia in stlib:
http://www.cplusplus.com/ref/cstdlib/atof.html
che in math:
http://www.cplusplus.com/ref/cmath/atof.html
da come è scritto sembra che la funzione in questione sia la stessa..
Re: [C] Implementazione di atof
Inviato: domenica 6 novembre 2005, 16:13
da Uncino
Per il C++ non so dirti, visto che non mi e'mai piaciuto ed ho sempre evitato di usarlo.
In ANSI C, ossia in ¨C standard¨, e'definita in stdlib.
Re: [C] Implementazione di atof
Inviato: domenica 6 novembre 2005, 16:15
da twilight
in C++ si, in C no.
Re: [C] Implementazione di atof
Inviato: domenica 6 novembre 2005, 16:16
da twilight
ops, anticipato di pochi secondi.
Re: [C] Implementazione di atof
Inviato: domenica 6 novembre 2005, 16:36
da 81joe81
Uncino ha scritto:
Per il C++ non so dirti, visto che non mi e'mai piaciuto ed ho sempre evitato di usarlo.
In ANSI C, ossia in ¨C standard¨, e'definita in stdlib.
purtroppo (o per fortuna
) io invece sono praticamente obbligato a usarlo in continuazione.. quanto mi ha fatto e mi farà penare!
Re: [C] Implementazione di atof
Inviato: domenica 6 novembre 2005, 16:39
da Uncino
Hehehe
Scherzi a parte, questo avvalora la mia idea, ossia che il C++ e' davvero un gran casino, oltretutto inefficiente sia sotto láspetto della gestione della memoria che sotto quello della velocita´ di esecuzione, e dunque non vi sono seri vantaggi nell´usarlo. Anche la parte inerente gli oggetti piu´ che nativa, mi pare ¨incollata¨ al C standard.
Le librerie C, per contro, sono relativamente ordinate e molto ottimizzate.
Uncio
Re: [C] Implementazione di atof
Inviato: domenica 20 novembre 2005, 14:49
da nadir
Uncino ha scritto:
Hehehe
Scherzi a parte, questo avvalora la mia idea, ossia che il C++ e' davvero un gran casino, oltretutto inefficiente sia sotto láspetto della gestione della memoria che sotto quello della velocita´ di esecuzione, e dunque non vi sono seri vantaggi nell´usarlo. Anche la parte inerente gli oggetti piu´ che nativa, mi pare ¨incollata¨ al C standard.
Le librerie C, per contro, sono relativamente ordinate e molto ottimizzate.
Uncio
no per carità non iniziamo un flaming!