Sonderzeichen :-(



  • Sagt mir wenn ich mich irre, aber sind die Zeichen nicht standartisiert? Das ist doch der ASCII-Code, oder irre ich mich nun?

    Also wenn du alle Zeichen ausgeben willst, dann mach das doch mit einer for-Schleife und static_cast. So habe ich das auch schon gemacht und es funktioniert alles wunderbar.

    Ich hoffe ich konnte helfen.

    MfG René



  • Apocalypse schrieb:

    Sagt mir wenn ich mich irre, aber sind die Zeichen nicht standartisiert? Das ist doch der ASCII-Code, oder irre ich mich nun?

    Ok, Du hast es so gewollt: Du irrst Dich...
    Und "Nein", es handelt sich dabei nicht um ASCII.
    ASCII geht von 0x00 - 0x7F!



  • okay..., kann ja mal passieren. Tut mir leid, dass ich mist erzählt habe! *erröt*

    MfG René



  • @Jochen Kalmbach
    Bei der Tabelle passiert genau das gleiche wie bei Allen es erscheinen entweder ander Zeichen im Programm alls da stehen 🙄 , oder aber gar Keine. Wie stellt man die Codepage den ein ? Mein Compiler ist Visual C++ 6.



  • SetConsoleOutputCP
    oder auf Commandozeile via
    mode con cp select=850



  • Wie macht man das mit der for schleife und static_cast (Schleifen kann ich schon nich das du jetzt denkst...)
    Kanst du mir mal ein Beispiel schreiben Apocalypse?



  • for(char c=' '; c<255; c++)
    {
      printf("%c", c);
    }
    


  • Ok , Ich hab das wie folgt umgebaut damit ich sone Art Tabelle hab:

    #include <iostream>
    #include <windows.h> 
    using namespace std; 
    
    int main()
    {
      int counter = 0;
      for(char c=' '; c<255; c++) 
      { 
      ++counter;
      if (counter == 256) break;
      cout << counter << ": " << c << endl;
          }
    return 0; 
    }
    

    Dan hab ich das Programm geöffnet und der Liste entnommen das wen ich cout << "\149" << endl; eingebe ein ä angezeigt wird (müsste ja so sein) , ist aber nicht so. Sondern es wird das MÄNLICHZEICHEN und dahinter eine 9 angezeigt 😡 ! Woran kann das bloß liegen ? Ich verstehs nicht 😕



  • Mit static_cast kannst du das zum Beispiel so machen:

    for(int i = 0; i <= 255; i++)
    {
        cout << i << ": " << static_cast<char>(i) << endl;
    }
    

    Da hast du die Nummern und das jeweilige Zeichen dazu.

    MfG René



  • Xclear schrieb:

    Dan hab ich das Programm geöffnet und der Liste entnommen das wen ich cout << "\149" << endl; eingebe ein ä angezeigt wird (müsste ja so sein) , ist aber nicht so. Sondern es wird das MÄNLICHZEICHEN und dahinter eine 9 angezeigt 😡 ! Woran kann das bloß liegen ? Ich verstehs nicht 😕

    Das was Du machen willst, geht mit C++ nicht...
    C++ kennt als Character-Constants nur Octal und Hexadecimal...
    http://msdn.microsoft.com/library/en-us/vccelng/htm/lexic_10.asp

    Also ändere es nach "\0x95"



  • Jochen Kalmbach schrieb:

    Also ändere es nach "\0x95"

    Hab ich probiert "cout << "\0x95" << endl;" aber dan wird bei mir garnichts angezeigt 😞
    Das liegt doch bestimmt an irgendeiner Einstellung(das was du gesacht hast hab ich gemacht)?


Anmelden zum Antworten