2016-05-26 8 views
1

Aus der Dokumentation in [1], ein Beispiel für die Ausgabe für den gdb x Befehl in C-Format ist wie folgt:Ausgabe des c-Formats für GDB x Befehl

(gdb) x/c testArray 
0xbfffef7b: 48 '0' 
(gdb) x/5c testArray 
0xbfffef7b: 48 '0' 49 '1' 50 '2' 51 '3' 52 '4' 

Was bedeutet diese Zahlen, wie 48, 49, 50 in der Ausgang bedeutet?

Ist es eine relative Adresse?

Vielen Dank!

[1] http://visualgdb.com/gdbreference/commands/x

+1

Werfen Sie einen Blick auf 'man ascii', Sie könnten Ihre Antwort dort finden ... – EOF

Antwort

2

x wird die Anzeige der Speicherinhalte bei einer gegebenen Adresse des gegebenen Format.

In Ihrem speziellen Fall zeigt x/5c die ersten 5 Bytes an der Speicherstelle testArray an und die Bytes werden als char ausgedruckt.

Die ersten 5 Bytes testArray sind die Zeichen 0, 1, 2, 3, 4 (der Wert in einfache Anführungszeichen). Der Wert davor ist der Dezimalwert des Zeichens.