Ich habe vorher eine Frage bezüglich der Generierung eines zufälligen Charakters ohne Vorzeichen gestellt und ziemlich gute Vorschläge kamen auf dem Weg, aber aufgrund der Einfachheit, die ich angewendet habe; srand((unsigned)time(NULL)); rand()%256;
Zufallszahlen auf nicht signierten Zeichen bleiben "?"
Ich rufe den Srand einmal am Anfang des Programms, aber ich bekomme immer '?' für ein zufälliges Zeichen. Nicht die ganze Zeit, aber die meiste Zeit und das lässt mich meinen Fokus verlieren.
Sie überprüfen den numerischen Wert und sehen, dass es tatsächlich '?' (ASCII-Wert 63) ist? Oder druckst du nur den Charakter? Wenn dies der Fall ist, ist es möglich, dass alle Nicht-ASCII-Werte (wie der Bereich 128-255) als "?" Gedruckt werden. Versuchen Sie, vor dem Drucken in 'int' zu konvertieren. –
Bitte beschreiben Sie, was Sie beobachten, dass Sie denken, dass Sie "?" für zufälliges Zeichen. Besser noch, bitte geben Sie ein ** kurzes **, ** vollständiges ** Testprogramm an. Siehe http://sscce.org/. –