123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- /*====================================================================*
- *
- * void decout (const byte memory [], size_t extent, char c, char e, FILE * fp);
- *
- * memory.h
- *
- * print a memory region as a series of decimal octets separated
- * by character c; normally, c will be DEC_EXTENDER as defined in
- * number.h;
- *
- * for example, decout (memory, 4, '.', stdout) would print
- *
- * 192.168.101.002
- *
- * Motley Tools by Charles Maier;
- * Copyright (c) 2001-2006 by Charles Maier Associates;
- * Licensed under the Internet Software Consortium License;
- *
- *--------------------------------------------------------------------*/
- #ifndef DECOUT_SOURCE
- #define DECOUT_SOURCE
- #include <stdio.h>
- #include <ctype.h>
- #include "../tools/memory.h"
- #include "../tools/number.h"
- void decout (void const * memory, size_t extent, char c, char e, FILE * fp)
- {
- byte * offset = (byte *)(memory);
- while (extent--)
- {
- unsigned order = 100;
- while (order)
- {
- putc (DIGITS_DEC [(* offset / order) % RADIX_DEC], fp);
- order /= RADIX_DEC;
- }
- if ((extent) && (c))
- {
- putc (c, fp);
- }
- offset++;
- }
- if (e)
- {
- putc (e, fp);
- }
- return;
- }
- #endif
|