SUCKUP.de

C-Programm – Steuerzeichen

This blog post has been published on 2010-10-26 and may be out of date.

“Als Steuerzeichen bezeichnet man die Zeichen eines Zeichensatzes, die keine darstellbaren Zeichen repräsentieren. (Darstellbare Zeichen sind z. B. Buchstaben, Ziffern und Satzzeichen). Ursprünglich wurden sie zur Ansteuerung von Textausgabegeräten wie Textdruckern, Telegrammgeräten oder Fernschreibern verwendet. Durch Steuerzeichen ist es möglich, Steuerungsbefehle für die Ausgabegeräte innerhalb des Zeichensatzes zu übertragen, anstatt die Steuerungsinformationen über ein anderes Protokoll zu übertragen.” – Wiki


(Einige dieser Steuerzeichen habe ich bereits in meiner .bashrc eingetragen, um den Bash-Prompt Farbe zu verleihen.)


Steuerzeichen Bedeutung
\a
BEL (bell) – akkustisches Warnsignal
\b
BS (backspace) – setzt Cursor um eine Position nach links
\f
FF(formfeed) – ein Seitenvorschub wird ausgelöst.
\n
NL (newline) – Cursor geht zum Anfang der nächsten Zeile
\r
CR (carriage return) – Cursor springt zum Anfang der aktuellen Zeile
\t
HT (horizontal tab) – Zeilenvorschub zur nächsten horizontalen Tabulatorposition (meistens acht Leerzeichen weiter)
\v
VT (vertical tab) – Cursor springt zur nächsten vertikalen Tabulatorposition
\"
” wird ausgegeben
\'
‘ wird ausgegeben
\?
? wird ausgegeben
\\
\ wird ausgegeben
\0
NULL (ist die Endmarkierung eines Strings)
\nnn
Ausgabe eines Oktalwerts (z.B. \033 = ESCAPE-Zeichen)
\xhh
Ausgabe eines Hexdezimalwerts
\033[0m
normaler Text
\033[1m
Fettschrift
\033[4m
unterstrichen
\033[30m
Schriftfarbe Schwarz
\033[31m
Schriftfarbe Rot
\033[32m
Schriftfarbe Grün
\033[33m
Schriftfarbe Gelb
\033[34m
Schriftfarbe Blau
\033[35m
Schriftfarbe Violett
\033[36m
Schriftfarbe Türkis
\033[40m
Hintergrundfarbe Schwarz
\033[41m
Hintergrundfarbe Rot
\033[42m
Hintergrundfarbe Grün
\033[43m
Hintergrundfarbe Gelb
\033[44m
Hintergrundfarbe Blau
\033[45m
Hintergrundfarbe Violett
\033[46m
Hintergrundfarbe Türkis


Es folge Beispiele, wo dies angewendet wurde…

#include <stdio.h>

main() {
    printf("\033[1m\033[31mDieser Text ist fett und rot.\033[0m\n");
    return(0);
}
#include <stdio.h>

int main() {
        printf("Dies ist ein Test und es folgt ein Zeilenumbruch\n");
        printf("\tTab einfügen und noch ein Zeilenumbruch\n");
        printf("Dieser Text wird überschrieben\r");
        printf("Das Leer \bzeichen wird entfernt");
        printf("\n\n\n");
        printf("\tJ\n");
        printf("\tu\n");
        printf("\ts\n");
        printf("\tt for\tF\n");
        printf("\t\tu\n");
        printf("\t\tn");
        return 0;
}

/* Ausgabe:

Dies ist ein Test und es folgt ein Zeilenumbruch
        Tab einfügen und noch ein Zeilenumbruch
Das Leerzeichen wird entfernt%

        J
        u
        s
        t for   F
                u
                n
*/