mirror of
https://github.com/troglobit/libite.git
synced 2026-10-06 23:40:05 +07:00
Add atonum() - Convert string to natural number, returns -1 on error.
Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
This commit is contained in:
@@ -13,6 +13,11 @@ traversing lists while deleting/freeing nodes.
|
||||
Helper Macros
|
||||
-------------
|
||||
|
||||
- `atonum(str)`
|
||||
|
||||
Convert string to natural number, works for 32-bit non-negative
|
||||
integers. Returns -1 on error.
|
||||
|
||||
- `blkdev(dev)`
|
||||
|
||||
Create block device
|
||||
|
||||
@@ -101,6 +101,20 @@ static inline int fisslashdir(char *dir)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Convert string to natural number (0-2147483647), returns -1 on error. */
|
||||
static inline int atonum(const char *str)
|
||||
{
|
||||
int val = -1;
|
||||
char *errstr;
|
||||
|
||||
if (str) {
|
||||
val = strtonum(str, 0, INT32_MAX, &errstr);
|
||||
if (errstr)
|
||||
return -1;
|
||||
}
|
||||
|
||||
return val;
|
||||
}
|
||||
|
||||
/* Validate string, non NULL and not zero length */
|
||||
static inline int string_valid (const char *s)
|
||||
|
||||
Reference in New Issue
Block a user