Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » if(cin)

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
27.07.2003, 16:37 Uhr
~chris
Gast


Ich verstehe folgende Anweisung im folgenden Code nicht 100 %.

C++:
void readInt(int & result)
{
  bool fail = false;
  do
  {
  cin >> result;
  if (!cin)                       ------>Laut Beschreibung wird hier geklärt ob der
  {                                         Stream im Zustand ungültig ist(d.h. ob das
   fail = true();                         fail flag gesetzt ist)
   cin.clear();                          
   cin.get();                                
  }
  else
  {
  fail = false;
  }
  
}while (fail)

}


Gruss Chris

--edit: cpp-tags eingefügt. Machs in Zukunft selbst.

Dieser Post wurde am 27.07.2003 um 17:03 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
27.07.2003, 17:05 Uhr
0xdeadbeef
Gott
(Operator)


-->
Wow, ich hätte nie gedacht, dass ich mal einen Thread in das ANSI-C/C++-Forum verschieben würde...
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
27.07.2003, 17:08 Uhr
0xdeadbeef
Gott
(Operator)


Der !-Operator der Template-Klasse istream ist überladen. Aus der Implementierung der basic_ios-template (von der istream abgeleitet ist) im g++-Tree:

C++:
bool operator!() const { return this->fail(); }


Das bedeutet, Die Ausdrücke !cin und cin.fail() machen das gleiche.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 27.07.2003 um 17:09 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: