Credo che l'errore sia perchè stai assegnando un valore floating point ad un puntatore:
codice:
BOOL GetNumber(struct TDF *IlF,const char *str, double *value) 
{ 
char Buffer[256], *endptr; 
int i = 0; 

while (*str == ' ') str++; 
for (; i < 255 && (isdigit(*str) || *str == '.' || *str == '+' || *str == '-' || *str == 'e' || *str == 'E'); i++, str++) 
Buffer[i] = *str; 
Buffer[i] = '\0'; 
*value = strtod(Buffer, &endptr); 
return (endptr == Buffer + i && i); 
}
Con la modifica che ho apportato dovrebbe andare.


Ciao.