aboutsummaryrefslogtreecommitdiff
path: root/riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/fmt_number.h
diff options
context:
space:
mode:
Diffstat (limited to 'riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/fmt_number.h')
-rw-r--r--riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/fmt_number.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/fmt_number.h b/riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/fmt_number.h
new file mode 100644
index 0000000..34ba68d
--- /dev/null
+++ b/riemann.fmi.uni-sofia.bg/ngetty/ngetty-1.1/fmt_number.h
@@ -0,0 +1,16 @@
+#define fmt_number_macro(f,type,base) \
+unsigned int f(char *s, type u) {\
+ type tmp=u;\
+ unsigned int len=0;\
+ do { tmp /=base; ++len; } while(tmp);\
+ if (s) {\
+ s +=len;\
+ do {\
+ unsigned char c = u%base;\
+ if (base <= 10) *--s = c+'0';\
+ else *--s = (c<10) ? c+'0' : c-10+'a';\
+ u /=base;\
+ } while (u);\
+ }\
+ return len;\
+}