16 #include "epicsMath.h" 31 while ((c = *str) && isspace(c))
35 value = strtol(str, &endp, base);
44 while ((c = *endp) && isspace(c))
62 while ((c = *str) && isspace(c))
66 value = strtoul(str, &endp, base);
75 while ((c = *endp) && isspace(c))
93 while ((c = *str) && isspace(c))
97 value =
strtoll(str, &endp, base);
106 while ((c = *endp) && isspace(c))
122 unsigned long long value;
124 while ((c = *str) && isspace(c))
137 while ((c = *endp) && isspace(c))
155 while ((c = *str) && isspace(c))
166 while ((c = *endp) && isspace(c))
205 if (value > 0xff && value <= ~0xffUL)
237 if (value > 0xffff && value <= ~0xffffUL)
253 #if (LONG_MAX > 0x7fffffffLL) 271 #if (ULONG_MAX > 0xffffffffULL) 272 if (value > 0xffffffffUL && value <= ~0xffffffffUL)
283 #if (LONG_MAX == 0x7fffffffffffffffLL) 301 #if (ULONG_MAX == 0xffffffffffffffffULL) 305 unsigned long long value;
327 if (value > 0 && abs <= FLT_MIN)
329 if (
finite(value) && abs >= FLT_MAX)
348 const char *cp =
str;
352 while (isspace((
int)*cp))
357 }
else if (*cp ==
'-') {
364 return strtol(str, endp, 16);
366 return strtoul(str, endp, 16);
368 if (!isalpha((
int)*cp)) {
369 res = strtod(str, endp);
380 while (*cp && (*cp++ !=
')'))
#define S_stdlib_underflow
LIBCOM_API int epicsParseInt64(const char *str, epicsInt64 *to, int base, char **units)
unsigned short epicsUInt16
LIBCOM_API int epicsParseInt8(const char *str, epicsInt8 *to, int base, char **units)
#define S_stdlib_noConversion
LIBCOM_API int epicsParseFloat(const char *str, float *to, char **units)
LIBCOM_API int epicsParseUInt8(const char *str, epicsUInt8 *to, int base, char **units)
#define S_stdlib_extraneous
unsigned long long epicsUInt64
LIBCOM_API int epicsParseULong(const char *str, unsigned long *to, int base, char **units)
LIBCOM_API int epicsParseUInt64(const char *str, epicsUInt64 *to, int base, char **units)
LIBCOM_API int epicsParseDouble(const char *str, double *to, char **units)
LIBCOM_API int epicsParseLong(const char *str, long *to, int base, char **units)
#define S_stdlib_overflow
LIBCOM_API int epicsParseULLong(const char *str, unsigned long long *to, int base, char **units)
LIBCOM_API int epicsParseInt32(const char *str, epicsInt32 *to, int base, char **units)
int epicsStrnCaseCmp(const char *s1, const char *s2, size_t len)
LIBCOM_API int epicsParseUInt32(const char *str, epicsUInt32 *to, int base, char **units)
LIBCOM_API int epicsParseInt16(const char *str, epicsInt16 *to, int base, char **units)
LIBCOM_API int epicsParseLLong(const char *str, long long *to, int base, char **units)
LIBCOM_API int epicsParseUInt16(const char *str, epicsUInt16 *to, int base, char **units)
LIBCOM_API double epicsStrtod(const char *str, char **endp)