Perintah set print address

Menentukan apakah GDB akan mencetak alamat saat mengevaluasi pointer.

Sintaksis

set print address on
set print address off
show print address

Mode

on
Saat mencetak nilai dari pointer, GDB akan mencetak alamat mentah bersama dengan informasi lainnya (contoh: $1 = 0xbffff232 "Hello, World").
off
Saat mencetak nilai dari pointer, GDB akan menyembunyikan alamat mentah dari output (contoh: $1 = "Hello, World").

Mode Default

Nilai default untuk pengaturan print address adalah 'on'.

Catatan

Perhatikan bahwa jika pencetakan alamat dinonaktifkan, nilai-nilai pointer tidak akan ditampilkan bahkan jika nilai pointer adalah bagian yang bermakna dari output. Oleh karena itu, mengevaluasi banyak jenis pointer (misalnya int *) akan menghasilkan hasil yang tidak bermakna (contoh: $1 = (int *) ).

Contoh

Berikut adalah log sesi GDB contoh yang mengilustrasikan bagaimana perintah set print address mempengaruhi output dari perintah print:

                        
(gdb) start
Breakpoint 1 at 0x80483f0: file test.cpp, line 5.
Starting program: /home/bazis/test

Breakpoint 1, main (argc=1, argv=0xbffff064) at test.cpp:5
5               return 0;
(gdb) print argc
$1 = 1
(gdb) print argv
$2 = (char **) 0xbffff064
(gdb) print argv[0]
$3 = 0xbffff232 "/home/bazis/test"
(gdb) print &argc
$4 = (int *) 0xbfffefd0
(gdb) show print address
Pencetakan alamat sedang aktif.
(gdb) set print address off
(gdb) print argc
$5 = 1
(gdb) print argv
$6 = (char **)
(gdb) print argv[0]
$7 = "/home/bazis/test"
(gdb) print &argc
$8 = (int *)