Tach!
Deine Fragen hab ich alle beantwortet.
Nein, du hast ein anderes Thema angeschitten, das nicht direkt Gegenstand der Aufgabenstellung war.
Wie ich das machen würde, zeigt mein Tool und hier ist eine entsprechende Library, die Du auch gerne erweitern kannst.
Das zeigt lediglich wie du die Codepoints aus UTF-8-kodierten Zeichen ermittelst. Die Frage, wie man Steuerzeichen in der Eingabe erkennt, beantwortet das jedoch noch nicht.
Das sind Codepoints unter 0x32 und noch ein paar Weitere, siehe UnicodeData.txt unter <control>
Somit kann dem Benutzer ganz konkret hingewiesen werden, an welcher Stelle er ein unerwünschtes Zeichen eingegeben hat und welches Zeichen das ist.
Nein, kann man noch nicht, weil die Prüfung auf "unerwünscht" nicht in dem Tool enthalten ist.
Im Übrigen legt das Unicode-Konsortium auch Namen für Zeichen fest, bei einer Fehlermeldung würde ich auch den Namen ausgeben.
Und nun? Diese Namen ermittelt dein Tool nicht.
doch (sofern die Namen verfügbar sind)
Also wie kommt man nun mit deiner Methode zum Ergebnis, ob in der Eingabe ungewünschte Zeichen enthalten sind?
indem man die Oktettenwertigkeiten bzw. die resultierenden Codepoints prüft.
Zusatzfrage zu deinem Ansatz der Codepoint-Ermittlung: Du wolltest die Namen der Zeichen anzeigen. Wie ermittelst du diese?
Das Unicode-Konsortium veröffentlicht diese Namen in einer Datei UnicodeData.txt Tipp: Suchbegriff control (70 Treffer und in der Ergebnistabelle steht auch, welche Oktetten das sind)