Wie zum unterstreichen von text mit printf in C
Stelle ich die Frage Bunter text mit printf in C gibt ein gutes Beispiel der Einstellung farbiger text auf der standard-Ausgabe in der Konsole in Windows. Gibt es etwas ähnliches, das ermöglicht die Ausgabe Unterstrichen werden? Oder eventuell noch Fett oder Kursiv gesetzt?
EDIT: ich habe versucht, Lundin s Antwort auf die Verwendung COMMON_LVB_UNDERSCORE mit kein Glück. Der Versuch, mit AddFontResource() hinzufügen arial italic schriftart, um zu versuchen, Kursiv gibt eine Fehlermeldung, dass es ein undefined reference to __imp_AddFontResourceA
InformationsquelleAutor Toby | 2015-04-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist es nicht möglich, dies zu tun mit jedem standard-C-Funktionen als C-Sprache nicht erkennen selbst die Anwesenheit von einem Bildschirm.
Mit Windows-API - console-Funktionen Sie können die Farben ändern, unterstreichen und einige andere Dinge. Die Besondere Funktion die du suchst heißt SetConsoleTextAttribute so wie in dem Beitrag, den Sie verlinkt. Ändern Sie Ihre Attribute zu gehören
COMMON_LVB_UNDERSCORE
.Hmm, so scheint es. Schon lange her, seit ich verwendet diese Funktionen. Ich werde tun, einige der Forschung, zu sehen, ob ich herausfinden kann, warum.
Die
COMMON_LVB_*
Attribute sind nur für dieCHAR_INFO
- Attribute die Konsole ist mit einem DBCS-codepage.InformationsquelleAutor Lundin
Könnten Sie Ihre Programme in einem gewissen Umfeld mit einem terminal akzeptieren ANSI-escape-codes.
(ich habe nie Windows benutzt - da ich mich mit Linux nur -, also ich weiß nicht, wie eine solche Umgebung unter Windows; aber ich habe gehört, dass es möglich ist)
Mit ANSI-escape-codes, zu unterstreichen ist
"\e[4m"
mit\e
wird die ASCII-ESCAPE-Zeichen.InformationsquelleAutor Basile Starynkevitch
Vielleicht versuchen Sie es mit termcaps. So etwas wie dies (nach der Initialisierung termcaps) :
oder präziser :
https://www.gnu.org/software/termutils/manual/termcap-1.3/html_node/termcap_34.html
InformationsquelleAutor Darth Boiethios