Es stammt aus den frühesten Tagen der Unix-Programmierung. Es war immer eine Empfehlung, dass Fehlernachrichten der Name des Befehls vorangestellt wird, der sie generiert, nicht zuletzt, damit bei Fehlern in einer Befehlspipeline angegeben werden kann, welcher der verschiedenen Befehle die Fehlermeldung generiert hat. Sie können den Stil in K & R 1. Edition, in einigen der Beispielprogramme (nicht ganz alle), und auch in 'Software Tools' von Kernighan & Plauger, und in 'The UNIX Programming Environment' von Kernighan & Pike sehen.
Für solche Fehlermeldungen gibt es keine vollständigen Standardwerkzeuge - Funktionen oder Makros. (Ich habe eine umfangreiche und umfassende Reihe von Fehlerberichtsfunktionen, die den Programmnamen vor der Nachricht drucken.)
Auch http://libexplain.sourceforge.net/ wenn Sie perror/stredror immer noch zu umständlich finden. – ephemient