Assembly GDB Print String

24,762

Solution 1

My teacher just emailed me back. For anyone wondering:

p(char[20]) Sample

Where 20 is the number of characters to print out.

To print a C-style NUL-terminated string, you should also be able to do this:

print (char*) &Sample
printf "%s", &Sample

Solution 2

I had the same issue! Try this one:

x/s &Sample # prints the whole string

"x" - Stands generally for examining data.

For a signle character you could youse this code

x/c &Sample # prints: "T"

And if you want see multiple characters you could give the number of wished characters

x/3c &Sample # prints: "T" "h" "i"
Share:
24,762
Admin
Author by

Admin

Updated on February 01, 2020

Comments

  • Admin
    Admin over 4 years

    So in assembly I declare the following String:

    Sample db "This is a sample string",0
    

    In GDB I type "p Sample" (without quotes) and it spits out 0x73696854. I want the actual String to print out. So I tried "printf "%s", Sample" (again, without quotes) and it spits out "Cannot access memory at address 0x73696854."

    Short version: How do I print a string in GDB?