Sono stato gettato alla sprovvista oggi da gdb
:
Program exited with code 0146.
gdb
stampa il codice di ritorno in ottale ; esaminando perché ho trovato:
http://comments.gmane.org/gmane.comp.gdb.devel/30363
Ma questa non è una risposta particolarmente soddisfacente. Alcuni rapidi googling non hanno rivelato la storia, quindi speravo che qualcuno su SO potesse conoscere la storia precedente.
Una domanda in qualche modo correlata, come si potrebbe visualizzare il codice di ritorno in ottale? Forse le macchine più vecchie stampavano sempre il codice di ritorno?
$ printf %o\\n $?
È piuttosto imbarazzante :)
man ascii
sarebbe inutile convertire l'ottale in decimale. bc
sarebbe una scelta migliore.
$?
è il valore della shell per il codice di ritorno, ed è una cifra decimale (o supportate da gdb tuo esempio cmd anche?). Non so perché gdb lo riporta in ottale. La mia soluzione è quella di uscire dal vecchioman ascii
per vedere cosa significano i valori ottali. Domanda interessante, dato che ti imbatti in valori ottali anche da altri programmi. Forse è discusso in "Unix Programming Envioronment" di Kernighan e Pike. In bocca al lupo.