Return Type | Function name | Arguments |
---|---|---|
bool | IsDouble | (double&,const char*,) |
Declared in file: hzTextproc.h
Defined in file : hzTypes.cpp
Function Logic:
Function body:
bool IsDouble (double& nVal, const char* tok) { _hzfunc("IsDouble") ; const char* i = tok ; double val = 0.0; double pt_pos = 0.0; bool bNeg = false ; if (!tok || !tok[0]) return false ; for (i = tok ; *i == CHAR_SPACE ; i++) ; if (*i == CHAR_MINUS) { bNeg = true ; i++ ; } if (*i == CHAR_PLUS) { if (bNeg) return false ; i++ ; } for (; *i == CHAR_SPACE ; i++) ; for (; *i ; i++) { if (!(chartype[*i] & CTYPE_DIGIT)) { if (*i != CHAR_PERIOD) return false ; if (pt_pos) return false ; pt_pos = 1.0; } val *= 10.0; val += (double) (*i - CHAR_0) ; pt_pos *= 10.0; } nVal = (val / pt_pos) ; if (bNeg) nVal *= -1.0; return true ; }