Q:

What's the default format of gdb print command

In my program, p_meta->padding is a char array. When I print it in gdb, the result is:  
(gdb) p p_meta->padding
$18 = "\037\000\000\000\332\375\024e\203\000\000\000\am\333p", '\000' <repeats 215 times>

It seems that it use the octal format. But I can't understand what do \024e or \am\333p mean. When I use a explicit format, I got:
(gdb) p /o p_meta->padding
$19 = {037, 0, 0, 0, 0332, 0375, 024, 0145, 0203, 0, 0, 0, 07, 0155, 0333, 0160, 0 <repeats 216 times>}
(gdb) p /x p_meta->padding
$20 = {0x1f, 0x0, 0x0, 0x0, 0xda, 0xfd, 0x14, 0x65, 0x83, 0x0, 0x0, 0x0, 0x7, 0x6d, 0xdb, 0x70,
  0x0 <repeats 216 times>}

The version of gdb is:
# gdb -v
GNU gdb (GDB) Fedora 7.12-24.fc25

Thanks for any help!

A:

It seems that Gdb use the char format for printable characters and use the octal format for non-printable characters. The e of \024e in default format equates the 0145 followed by 024 in octal format. 

