In the disassembly there’s such code:
movl $0x6,-0x4(%rbp)
I try to print the value this way but fails:
(gdb) p 0x4(%esp)
A syntax error in expression, near `%esp)'.
(gdb) p 0x4+$esp
Argument to arithmetic operation not a number or boolean.
How to print it correctly?
It looks like you’re working with 64 bit code, in which case you just need, e.g.:
If you want to see what’s actually at this address, then you need to cast the
void *address, e.g.or, more succinctly, use
xinstead ofp, e.g.