Unterschied-> cout vs WriteLine Frage

Dieses Thema im Forum "C/C++" wurde erstellt von FoxViper, 19.12.2008.

  1. #1 FoxViper, 19.12.2008
    FoxViper

    FoxViper Goupner

    Dabei seit:
    08.07.2007
    Beiträge:
    45
    Zustimmungen:
    0
    hi,
    vorab, ich bin Anfänger und bemühe mich die Sprache zu erlernen :hilfe2:

    Problem:

    Code:
    #Char eingabe;
    #cin >> eingabe;
    #cout << eingabe;
    #return 0;
    
    erzeugt einen Fehler bei mir

    Code:
    #Char eingabe;
    #eingabe=Console::Read();
    #cout << eingabe;
    #return 0;
    
    erzeugt kein Fehler aber eben nur die Ausgabe in Int-Form
    also als Zahl

    Code:
    #Char eingabe;
    #eingabe=Console::Read();
    #Console::Write(eingabe);
    #return 0;
    
    Funktioniert ohne Probleme!

    Wieso gibt es da diese Unterschiede?
    warum ist eine Ausgabe mit "cout" nicht korrekt möglich?


    ich stehe da echt auf nen Schlauch, versteh das einfach nicht :headup:


    greets
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Und welchen? Der Code an sich sieht korrekt aus.

    'Console::Read()' sieht mir nicht nach Standard-C++ aus. Koennte es sein, dass Du unter Windows programmierst? Versuche doch, dem Standard treu zu bleiben und gibt uns zunaechst den Fehler an, den Du mit dem ersten Code-Fragment erhaeltst, damit man dort angreifen kann. Mit Windows kennen sich wahrscheinlich nicht sehr viele in diesem Forum aus.

    Zu Deinem zweiten Code-Fragment: Falls Du eine Ausgabe als char und nicht als int haben moechtest, musst Du vorher 'casten', d.h.,
    Code:
    std::cout << char(eingabe);
    
     
  4. #3 FoxViper, 19.12.2008
    FoxViper

    FoxViper Goupner

    Dabei seit:
    08.07.2007
    Beiträge:
    45
    Zustimmungen:
    0
    hi,

    also ich nutzte einmal SuSe und auf Lappi Win+VS C++ 9.0
    und ja der Quellcode stammt aus VS 9.0

    aber ich dachte bisweilen das C übergreifend arbeiten kann, sprich auf unterschiedlichen BS? nun das ist dann wohl nicht so X(

    zur allg. Aufgabe:
    es ging mir darum ein Zeichen (Buchstabe) einzulesen und dieses dann wieder ausgeben, um zu sehen ob dies mit eine Char-Variable möglich ist.

    im Quellcode
    Code:
    cout <<
    cin >>
    
    kommt folgende Fehlermeldung
    warum muss ich 'casten' ?
    der Datentyp ist doch Char, dieser Typ speichert doch intern 8 Bit (-127 bis 128 ), ?(

    Code:
    #Char eing;
    
    #eing = Console::Read();
    #//cin >> eing //geht nicht;
    
    #cout << char(eing) << endl;
    #return 0;
    
    das funktioniert auch super, nur wenn ich den 'cin' Befehl nutze, verweigert mir VS 9 ein debuggen

    wie kann ich denn dieses mit ohne den "Console::Read" Befehl bewerkstelligen?

    greets
     
  5. #4 bytepool, 19.12.2008
    Zuletzt bearbeitet: 19.12.2008
    bytepool

    bytepool Code Monkey

    Dabei seit:
    12.07.2003
    Beiträge:
    791
    Zustimmungen:
    0
    Ort:
    /home/sweden/göteborg
    Hi,

    C++ ist case-sensitive, der Datentyp den du suchst ist char nicht Char. Char scheint bei dir ein alias fuer wchar_t zu sein, also ein 2 byte char, d.h. ein unicode character.

    Fuer eine ausfuehrlichere Antwort bin ich grad zu faul, hatte n scheiss Arbeitstag. ;p

    mfg,
    bytepool
     
  6. #5 ReduX08, 26.12.2008
    ReduX08

    ReduX08 Foren As

    Dabei seit:
    13.05.2008
    Beiträge:
    80
    Zustimmungen:
    0
    Tag,
    C/C++ arbeitet Plattformübergreifend.
    Du musst dich nur an den standart halten.

    Ich würde dir empfehlen das VS Studio auf dem Windows Rechner zu entfernen und stattdessen das gleiche zu verwenden das du auch unter Linux verwendest.
    Den GCC gibts unter Windows auch und nennt sich MinGW.
    Hatte nämlich auch einmal VS und das hat mir immer Windows zeugs mit eingebunden.

    MFG ReduX08
     
  7. #6 hagbard celine, 26.12.2008
    hagbard celine

    hagbard celine Routinier

    Dabei seit:
    02.06.2005
    Beiträge:
    251
    Zustimmungen:
    0
    Ort:
    Chemnitz
    ich nutze auf Arbeit auch VS und dort hat tatsächlich MS seinen eigenen Standard definiert. Dieser weicht ein wenig vom ANSI und nutzt auch Aliases für betimmte Datentypen. Wenn du aber ein leeres Projekt startest und alles laut ANSI eingbst funktioniert dasauch in VS. Der Datentyp char wird IMMER klein geschrieben. Desweiteren gehören die Operatoren ">>" und "<<" zu "iostream", welches du erstmal einbinden musst. Dazu verwendest du ein "include <iostream". Falls das Problem weiterhin besteht, poste mal dein ganzes Code.
     
  8. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
Thema:

Unterschied-> cout vs WriteLine Frage

Die Seite wird geladen...

Unterschied-> cout vs WriteLine Frage - Ähnliche Themen

  1. cout fehler beim kompilieren

    cout fehler beim kompilieren: grüße! folgender code läuft bei mir nicht: #include <iostream> int main() { cout << "Hallo Welt\n"; return 0; }es...