862 B
862 B
Unicode vs ANSI in der Windows-Konsole
Standardmäßig nutzt die Windows-Konsole eine ANSI-Codepage (z. B. 850 oder 1252). Für echte Unicode-Zeichen wie 📁 oder ✓ ist das oft ungeeignet.
Problem
- Ohne UTF-8: Unicode-Zeichen erscheinen als Kästchen oder Müll
- Ausgabe wie
📁
ergibtƒôü
oder ähnliches
Lösung
1. UTF-8 aktivieren
#include <windows.h>
SetConsoleOutputCP(65001); // Codepage 65001 = UTF-8
2. Kompiler-Flag setzen
cl /utf-8 main.c ...
3. Terminal unterstützen lassen
cmd.exe
: nur begrenzt tauglich- Windows Terminal: beste Wahl
- PowerShell (v7+) ebenfalls ok
4. Schriftart beachten
- Monospace + Unicode-fähig:
Cascadia Code
,Segoe UI Emoji
,Fira Code
Hinweis
- Auch Eingabe (
SetConsoleCP
) kann auf UTF-8 gesetzt werden, wird aber selten benötigt