* factor. The buf array inherits a 27 byte minimim length
* requirement from edit_unit64_with_commas(), although the output
* string is limited to eight characters.
+ * When with_space is true (default) a space is inserted between
+ * the value and the suffix
*/
-char *edit_uint64_with_suffix(uint64_t val, char *buf)
+char *edit_uint64_with_suffix(uint64_t val, char *buf, bool with_space)
{
int commas = 0;
char *c, mbuf[50];
if (commas >= suffixes)
commas = suffixes - 1;
- bsnprintf(buf, 27, "%s %s", mbuf, suffix[commas]);
+ bsnprintf(buf, 27, with_space?"%s %s":"%s%s", mbuf, suffix[commas]);
return buf;
}
int64_t str_to_int64(char *str);
#define str_to_int32(str) ((int32_t)str_to_int64(str))
char * edit_uint64_with_commas (uint64_t val, char *buf);
-char * edit_uint64_with_suffix (uint64_t val, char *buf);
+char * edit_uint64_with_suffix (uint64_t val, char *buf, bool with_space=true);
char * add_commas (char *val, char *buf);
char * edit_uint64 (uint64_t val, char *buf);
char * edit_int64 (int64_t val, char *buf);