From 7b3204679bf53733ade52436723fc41858260d36 Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Sun, 17 Mar 2013 18:28:00 +0100 Subject: ^E\ string building character to format number * new Expressions::format() * may be used format numbers as part of arrays (Q-Register names) --- src/expressions.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/expressions.cpp') diff --git a/src/expressions.cpp b/src/expressions.cpp index 7975d10..8d15d73 100644 --- a/src/expressions.cpp +++ b/src/expressions.cpp @@ -220,3 +220,24 @@ Expressions::discard_args(void) for (int i = args(); i; i--) pop_num_calc(); } + +const gchar * +Expressions::format(tecoInt number) +{ + /* maximum length if radix = 2 */ + static gchar buf[1+sizeof(number)*8+1]; + gchar *p = buf + sizeof(buf); + + tecoInt v = ABS(number); + + *--p = '\0'; + do { + *--p = '0' + (v % radix); + if (*p > '9') + *p += 'A' - '9'; + } while ((v /= radix)); + if (number < 0) + *--p = '-'; + + return p; +} -- cgit v1.2.3