C/Hex Dump

From Attie's Wiki
Revision as of 10:25, 25 October 2013 by Attie (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The following code will dump buffer that is bufferLen bytes long.

for (i = 0; i < bufferLen; i++) {
	if (i % 16 == 0) {
		printf(" 0x%04X: ", i);
	}
	printf(" 0x%02X", buffer[i]);
	if (i % 16 == 15) {
		printf("\n");
	}
}
if (i % 16 != 0) {
	for (; i % 16 != 0; i++) {
		printf("  -- ");
	}
	printf("\n");
}

The output will look like this:

 0x0000:  0xE2 0x80 0xB0 0x4D 0xC2 0x8D 0xCB 0x86 0x63 0xC2 0x81 0xE2 0x80 0xB0 0x4D 0xC2
 0x0010:  0xBC 0xE2 0x80 0xB0 0x45 0xC3 0x80 0x66 0xC3 0x87 0x45 0xC3 0x8C 0x0A 0x6A 0x58
 0x0020:  0x66 0xE2 0x80 0xB0 0x45 0xC3 0x8E 0xE2 0x80 0xB0 0x45 0xC3 0xBC 0xC3 0xA9 0xC3
 0x0030:  0xB7 0xC2 0xA1 0xC3 0x80 0x43 0xE2 0x80 0xB0  --   --   --   --   --   --   --
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox