• Navigation überspringen
  • Zur Navigation
  • Zum Seitenende
Organisationsmenü öffnen Organisationsmenü schließen
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
  • FAUZur zentralen FAU Website
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Suche öffnen
  • English
  • Campo
  • StudOn
  • FAUdir
  • Stellenangebote
  • Lageplan
  • Hilfe im Notfall
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
Menu Menu schließen
  • Lehrstuhl
    • Team
    • Aktuelles
    • Kontakt und Anfahrt
    • Leitbild
    • 50-jähriges Jubiläum
    Portal Lehrstuhl
  • Forschung
    • Forschungsbereiche
      • Betriebssysteme
      • Confidential Computing
      • Embedded Systems Software
      • Verteilte Systeme
    • Projekte
      • AIMBOS
      • BALu
      • BFT2Chain
      • DOSS
      • Mirador
      • NEON
      • PAVE
      • ResPECT
      • Watwa
    • Projektkampagnen
      • maRE
    • Seminar
      • Systemsoftware
    Portal Forschung
  • Publikationen
  • Lehre
    • Sommersemester 2025
      • Applied Software Architecture
      • Ausgewählte Kapitel der Systemsoftware
      • Betriebssystemtechnik
      • Projekt angewandte Systemsoftwaretechnik
      • System-Level Programming
      • Systemnahe Programmierung in C
      • Systemprogrammierung 1
      • Verteilte Systeme
    • Wintersemester 2025/26
      • Systemprogrammierung 2
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte Systeme
      • Projekt angewandte Systemsoftwaretechnik
      • Aktuelle Entwicklung in Verteilten und Objektorientierten Betriebssystemen (für Bachelor-/Masterarbeit)
    Portal Lehre
  • Examensarbeiten
  1. Startseite
  2. Extern

Extern

Bereichsnavigation: Lehre
  • Betriebssysteme
    • Vorlesung
      • Folien
    • Übung
      • Seminar
      • Aufgaben
      • Aufgabe 0: C++ Streams
        • Aufgabe 1: Ein-/Ausgabe
          • Aufgabe 2: Unterbrechungen
            • Aufgabe 3: Pro-/Epilog
              • Aufgabe 4: Kontextwechsel
                • Aufgabe 5: Zeitscheiben
                  • Aufgabe 6: Synchronisation
                    • Assembler Crashkurs
                      • C++ Crashkurs
                        • Entwicklungsumgebung
                          • FAQ
                            • Ruhmeshalle

                          Aufgabe 6: Synchronisation

                          Public Member Functions | Public Attributes | List of all members
                          OutputStream Class Referenceabstract

                          The class OutputStream corresponds, essentially, to the class ostream from the C++ IO-Stream library. More...

                          #include <object/outputstream.h>

                          + Inheritance diagram for OutputStream:
                          [legend]
                          + Collaboration diagram for OutputStream:
                          [legend]

                          Public Member Functions

                           OutputStream ()
                           Default constructor. Initial number system is decimal.
                           
                          virtual ~OutputStream ()
                           Destructor.
                           
                          virtual void flush ()=0
                           Clears the buffer. More...
                           
                          OutputStream & operator<< (char c)
                           Print a single character. More...
                           
                          OutputStream & operator<< (unsigned char c)
                           Print a single character. More...
                           
                          OutputStream & operator<< (const char *string)
                           Printing a null-terminated string. More...
                           
                          OutputStream & operator<< (bool b)
                           Print a boolean value. More...
                           
                          OutputStream & operator<< (short ival)
                           Print an integral number in radix base More...
                           
                          OutputStream & operator<< (unsigned short ival)
                           Print an integral number in radix base More...
                           
                          OutputStream & operator<< (int ival)
                           Print an integral number in radix base More...
                           
                          OutputStream & operator<< (unsigned int ival)
                           Print an integral number in radix base More...
                           
                          OutputStream & operator<< (long ival)
                           Print an integral number in radix base More...
                           
                          OutputStream & operator<< (unsigned long ival)
                           Print an integral number in radix base More...
                           
                          OutputStream & operator<< (long long ival)
                           Print an integral number in radix base More...
                           
                          OutputStream & operator<< (unsigned long long ival)
                           Print an integral number in radix base More...
                           
                          OutputStream & operator<< (const void *ptr)
                           Print a pointer as hexadecimal number. More...
                           
                          OutputStream & operator<< (OutputStream &(*f)(OutputStream &))
                           Calls one of the manipulator functions. More...
                           
                          - Public Member Functions inherited from Stringbuffer
                          virtual ~Stringbuffer ()
                           Destructor (nothing to do here)
                           

                          Public Attributes

                          int base
                           Number system used for printing integral numbers (one of 2, 8, 10, or 16)
                           

                          Additional Inherited Members

                          - Protected Member Functions inherited from Stringbuffer
                           Stringbuffer ()
                           Constructor; Marks the buffer as empty.
                           
                          void put (char c)
                           Inserts a character into the buffer. More...
                           
                          virtual void flush ()=0
                           Flush the buffer contents. More...
                           
                          - Protected Attributes inherited from Stringbuffer
                          char buffer [80]
                           buffer containing characters that will be printed upon flush()
                           
                          long unsigned pos
                           current position in the buffer
                           

                          Detailed Description

                          The class OutputStream corresponds, essentially, to the class ostream from the C++ IO-Stream library.

                          As relying on the method Stringbuffer::put() is quite cumbersome when not only printing single characters, but numbers and whole strings, the class OutputStream provides a convenient way of composing output of variables of varying data types. Therefore, OutputStream implements shift operators operator<<` for various data types (similar to those known from the C++ IO-Stream library)

                          For further convenience, OutputStream also allows printing integral numbers in decimal, binary, octal, and hexadecimal format. Remember that, for negative numbers, the sign is only printed when using the decimal number system; for binary, octal, and hex, the number is printed as stored in the machine word without interpreting the sign. For Intel CPUs, two's complement is used for storing negative values, -1, for example, will print hex FFFFFFFF and octal 37777777777.

                          OutputStream's public methods/operators all return a reference to the object they are called on (i.e. *this). Returning *this allows chaining those stream operators in a single expression, such as kout << "a = " << a;

                          At this point in time, OutputStream implements operator<< for chars, strings and whole numbers. An additional operator<< allows using manipulators whose detailed description is given below.

                          Member Function Documentation

                          virtual void OutputStream::flush ( )
                          pure virtual

                          Clears the buffer.

                          Pure virtual method that must be implemented by derived (non-abstract) classes. Formatting of the buffer contents can be implemented differently by different derived classes

                          Implements Stringbuffer.

                          Implemented in SerialStream, TextStream, ConsoleOut, and FileOut.

                          OutputStream & OutputStream::operator<< ( char  c)

                          Print a single character.

                          Parameters
                          cCharacter to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( unsigned char  c)

                          Print a single character.

                          Note
                          In C, there are no "characters" in that sense, but only integers. A char, therefore, is a 8 bit number with the most significant bit (optionally) representing a sign. Depending on whether signed or not, the value ranges are [-128, 127] or [0; 255]. For GCC, a char is a signed char.
                          Parameters
                          cCharacter to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( const char *  string)

                          Printing a null-terminated string.

                          Parameters
                          stringString to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( bool  b)

                          Print a boolean value.

                          Parameters
                          bBoolean to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( short  ival)

                          Print an integral number in radix base

                          Parameters
                          ivalNumber to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( unsigned short  ival)

                          Print an integral number in radix base

                          Parameters
                          ivalNumber to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( int  ival)

                          Print an integral number in radix base

                          Parameters
                          ivalNumber to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( unsigned int  ival)

                          Print an integral number in radix base

                          Parameters
                          ivalNumber to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( long  ival)

                          Print an integral number in radix base

                          Parameters
                          ivalNumber to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( unsigned long  ival)

                          Print an integral number in radix base

                          Parameters
                          ivalNumber to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( long long  ival)

                          Print an integral number in radix base

                          Parameters
                          ivalNumber to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( unsigned long long  ival)

                          Print an integral number in radix base

                          Parameters
                          ivalNumber to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( const void *  ptr)

                          Print a pointer as hexadecimal number.

                          Parameters
                          ptrPointer to be printed
                          Returns
                          Reference to OutputStream os; allows operator chaining.
                          OutputStream & OutputStream::operator<< ( OutputStream &(*)(OutputStream &)  f)

                          Calls one of the manipulator functions.

                          Method that calls the manipulator functions defined below, which allow modifying the stream's behavior by, for instance, changing the number system.

                          Parameters
                          fManipulator function to be called
                          Returns
                          Reference to OutputStream os; allows operator chaining.

                          The documentation for this class was generated from the following files:
                          • object/outputstream.h
                          • object/outputstream.cc
                          Friedrich-Alexander-Universität
                          Erlangen-Nürnberg

                          Schlossplatz 4
                          91054 Erlangen
                          • Impressum
                          • Datenschutz
                          • Barrierefreiheit
                          • Facebook
                          • RSS Feed
                          • Xing
                          Nach oben