Einführung in Wirkoperatoren in C++ im Rahmen der Lehre des Programmierens mit der Programmiersprache C++. (C++ Operator C++ Nebenwirkung C++ Seiteneffekt C++ Seiteneffekte C++ C++ Wirkoperatoren C++ Wirkoperator ), Lektion, Seite 720810
https://www.purl.org/stefan_ram/pub/c++_wirkoperator_de (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
C++-Kurs

Wirkoperatoren in C++ 

main.cpp
int main(){ 4; }
::std::cout
(keine Ausgabe)
main.cpp
int main(){ 2 + 4; }
::std::cout
(keine Ausgabe)
main.cpp
int main(){ 2 << 4; }
::std::cout
(keine Ausgabe)

Falls der erste (beim Lesen in normaler Leserichtung) Operand eine Zahl ist, bedeutet »<<« (etwas vereinfacht gesagt), daß der erste Wert so oft verdoppelt werden soll, wie der Wert des zweiten Operanden angibt.

Prioritätsstufen (weiter oben = höhere Priorität)

( … )

…()

-…, +…

L … * …, …/…

L … + …, … - …

L … << …

main.cpp

#include <iostream> /* ::std::cout */
#include <ostream> /* << */
#include <string> // ""s

using namespace ::std::literals;

int main(){ ::std::cout << "A\n"s; }

::std::cout
A
main.cpp

#include <iostream> /* ::std::cout */
#include <ostream> /* << */
#include <string> // ""s

using namespace ::std::literals;

int main(){ ( ( ::std::cout )<<( "A\n"s )); }

::std::cout
A

(In einem Zeichenfolgenliteral steht [etwas vereinfacht gesagt] »\n« für ein Zeilenende.)

Die lexikalische Einheit »<<« ist in dem Ausdruck »::std::cout << "A\n"s« ebenfalls ein Operator: Der Ausgabeoperator.

Dies ist wieder ein Beispiel für Polymorphie!

Mit seinem ersten Operanden, dem Ziel  der Ausgabe (einem Ausgabestrom wie beispielsweise »::std::cout«), und seinem zweiten Operanden, der Quelle  der Ausgabe, bildet er den Ausgabeausdruck.

Syntax
Ausgabeausdruck
.------. .---. .------.
--->| Ziel |--->· << ·--->|Quelle|--->
'------' '---' '------'

Die Auswertung eines Ausgabeausdrucks führt dann zur Ausgabe der Quelle auf das Ziel.

Beispielsweise gibt »::std::cout << 65« den Wert »65« auf das Ziel »::std::cout« aus.

»::std::cout« ist der voreingestellte Standardausgabestrom, normalerweise ein Bereich des Bildschirms (ein Textfenster).

Ein Ausgabestrom ist so viel wie eine Zeichenfolge, an die weitere Zeichen angehängt werden können.

main.cpp

#include <iostream> /* ::std::cout */
#include <ostream> /* << */
#include <string> // ""s

using namespace ::std::literals;

int main(){ ::std::cout << "A\n"s; }

::std::cout
A

In dem obigen Beispielprogramm bedeutet der Name »::std::cout« ein Ausgabeziel (das Textfenster).

»::std::cout« hat einen Wert. Dieser Wert ist aber keine Zahl. Wir müssen nicht mehr über diesen Wert wissen, als daß er als erster Operandenwert des Ausgabeoperators »<<« verwendet werden kann, also ein Ausgabeziel  darstellt, und dann die Bedeutung „Standardausgabestrom“ (Bildschirm) hat.

Die lexikalische Einheit »<<« ist ein binärer Infixoperator, der – falls er eine Ausgabe bewirkt – auch als Ausgabeoperator  bezeichnet werden kann.

Der Operator »<<« ist linksassoziativ.

Der Wert  der Auswertung des Operators »<<« ist stets der Wert des ersten  Operanden (falls dieser ein Ausgabeziel darstellt), mit anderen Worten: Der Wert  der Auswertung des Operators »<<« ist stets der erste  Operand.

Die Wirkung  der Auswertung des Operators »<<« ist die Ausgabe des Wertes des zweiten  Operanden auf den durch den Wert des ersten Operanden bestimmten Ausgabestrom.

Ausgabeanweisungen

Wie hatten eine Anweisung wie »::std::cout << "A"s << "\n"s;« zunächst als „Ausgabeanweisung“ bezeichnet.

Nun können wir erkennen, daß es sich tatsächlich um nichts anderes als eine Auswertungsanweisung mit dem Ausdruck »::std::cout << "A"s << "\n"s« handelt.

Übungsfragen

?   Das Ausgabesystem

Wie würden Sie »::std::cout« (am Telephon) aussprechen?

?   Der Ausgabeoperator

Wie würden Sie »<<« (am Telephon) aussprechen?

?   Das Ausgabesystem

Was ist »::std::cout« im Ausdruck »::std::cout << 2«? Wählen Sie die zutreffenden der folgenden Möglichkeiten!

?   Der Ausgabeoperator und seine Operanden

Was ist der Operator in dem Ausdruck »::std::cout << 2«?

Was ist der erste Operand in dem Ausdruck »::std::cout << 2«?

Was ist der zweite Operand in dem Ausdruck »::std::cout << 2«?

?   Wert des Ausgabeoperators

Der Wert  der Auswertung des Operators »<<« ist stets der Wert des ersten  Operanden (falls dieser ein Ausgabeziel darstellt), mit anderen Worten: Der Wert  der Auswertung des Operators »<<« ist stets der Wert des ersten  Operanden.

Welche Wert hat demnach der Ausdruck »::std::cout << 2«?

Welche Wert hat der Ausdruck »::std::cout << 2 << 3«? (Der Operator »<<« ist linksassoziativ.)

?   Wirkung des Ausgabeoperators

Die Wirkung  der Auswertung des Operators »<<« ist die Ausgabe des zweiten  Operanden auf den Ausgabestrom, der durch den Wert des ersten Operanden bestimmt wird.

Welche Wirkung hat demnach die Auswertung des Ausdrucks »::std::cout << 2«?

Welche Wirkung hat die Auswertung des Ausdrucks »::std::cout << 2 << 3«?

Englische Bezeichnung für »<<« *

“(stream) insertion operator ” oder “(stream) inserter 

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram720810 stefan_ram:720810 C++ Operator C++ Nebenwirkung C++ Seiteneffekt C++ Seiteneffekte C++ C++ Wirkoperatoren C++ Wirkoperator source, source code,sourcecode, Programmier sprache C++ Sprache, C++, CXX, C+, Programm, Programme, C++-Programm C++ Sprache C++ Programmiersprache C++ c++-Programme, Standard C++, Programmieren in C++, Programmieren in CXX, Programmieren in CPP, Programmieren in Cplusplus, Die Programmiersprache C++, Die Programmiersprache CXX, Die Programmiersprache CPP, Die Programmiersprache Cplusplus, Die Programmier sprache C++, Die Programmier sprache CXX, Die Programmier sprache CPP, Die Programmier sprache Cplusplus, CXX-Programmierung, C++-Programmierung, CPP-Programmierung, c-plus-plus, cpluplus-Programmierung, ANSI-C++, ANSI-CXX, ANSI-CPP, ANSI C++, ANSI CXX, ANSI-cpluscplus ISO-C++, ISO-CXX, ISO CPP, ISO C++, ISO CXX, ISO/IEC-C++, ISO/IEC-CXX, ISO/IEC CPP, ISO/IEC C++, ISO/IEC CXX, IEC-C++, IEC-CXX, IEC CPP, IEC C++, IEC CXX, International Standard ISO/IEC 14882 First edition 1998-09-01, ISO/IEC 14882:1998(E), ISO/IEC 14882:2003(E), ASC X3, 7/27/98, c plus plus, C ++, cplusplus, c plus plus, Standard C+ programmieren, Stamdard C++ programmieren, Standart C+ programmieren, Stamdart C++ programmieren, INCITS/ISO/IEC 14882-1998, Information Technology - Programming Languages - C++ (formerly ISO/IEC 14882-1998), Programmieren in C++,Programmiersprache C++ CPP CXX Cplusplus c plus plus International Standard ISO/IEC 14882 First edition 1998-09-01, Softwareentwicklung, Software-Entwicklung, Software Entwicklung, Softwareprogrammierung, Software-Programmierung, Software Programmierung, Softwareherstellung, Software-Herstellung, Software Herstellung, Softwareerstellung, Software-Erstellung, Software Erstellung, Softwareengineering, Software-Engineering, Software Engineering, Softwareenginering, Software-Enginering, Software Enginering, Softwaremethodik, Software-Methodik, Software Methodik, Programmiermethodik, Programmier-Methodik, Programmier Methodik, Softwaredidaktik, Software-Didaktik, Software Didaktik, Methodik des Programmierens, Didaktik des Programmierens, Fachdidaktik des Programmierens, Fach-Didaktik des Programmierens, Programmieren, Programmierung, Computer Science, Informatik, Informatik, Informationspädagogik, Informationspaedagogik, Programmierer, programmieren, Quellcode, Quelltext, Quelle, Quellen, Informatiker, Fachinformatiker, Entwickler, mit Stil, mit Stiel, mit Still, , Einführung, Einfuehrung, Einführungen, Einfuehrungen, eLearning-Modul, e-Learning-Modul, eLearning-Module, e-Learning-Module, Kurs Berlin, Kurse Berlin, Kursus, Vortrag, Vorträge, Vortraege, Lehrgang, Lehrgänge, Lehrgaenge, kostenloses Lehrmaterial, kostenlose Lehrmaterialien, Vorlesung, Vorlesungen, Unterrichtseinheit, Unterrichtseinheiten, kostenloses Unterrichtsmaterial im Internet, kostenlose Unterrichtsmaterialien im Internet, Ausbildung, Ausbildungen, für die Ausbildung, Fortbildung, Fortbildungen, Weiterbildung, Weiterbildungen, Schulung Berlin, Schulungen Berlin, Internetschulung, Webschulung, Kursunterlage, Kursunterlagen, trainer Berlin, Didaktik, Informatikunterricht, Primer, Skript FH, Skripte FH, Skriptum FH, Skripts FH, Script FH, Scripte FH, Scriptum FH, Scripts FH, howto, how-to, how to, Lehrbuch, Buch, Bücher, Buecher, Bericht, Crash Kurs Berlin, Crash-Kurs Berlin, Crashkurs Berlin, Report, Sachtext, Sachtexte, Übung, Übungen, Uebung, Uebungen, course, PbclevtugFgrsnaEnz, lecture note, lecture notes, Tutorial, Tutor, Tutorium, Teacher, Lehrer Berlin, Trainer Berlin, Beratung Berlin, Anleitung zum, Anleitungen zum, Einführung, Einfuehrung, Einführungen, Einfuehrungen, Handbuch für, Handbücher, Handbuecher, Support, Diplomarbeit, Facharbeit, Hausarbeit, Hausarbeiten, Werk, Werke, Text, Übungsblatt, Uebungsblatt, Lösung, Loesung, Lösungen, Loesungen, Auflösung, Aufloesung, Auflösungen, Aufloesungen, Facharbeit, Facharbeiten, Forum, Training, manual, Folie, Folien, Lehrmittel, beratung, Definition von, Allgemeine Erklärung, Allgemeine Erklaerung, Allgemeine Erklärungen, Allgemeine Erklaerung, Allgemeine Erklaerungen, Einfache Erklärung einfach, Einfache Erklaerung einfach, Einfache Erklärungen, Einfache Erklaerung, Einfache Erklaerungen, zum Thema, FAQ, FAQs, Konzept, Lernkurs, Lern-Kurs, Lernkurse, Lern-Kurse, eine kurze Erklärung, Begriff, Begriffe, Erklärung zu Begriffen, begriffbestimmung, begriffbestimmung, Begriffsbestimmung, Begriffserklärung, Begriffserklaerung, Wort, Worterklärung, Worterklaerung, Definition, Beispiel, Beispiele, Bedeutung, Bedeutungen, was bedeutet, Begriffsdefinition, für Anfänger, fuer Anfaenger, für Einsteiger, für Beginner, zum selber Lernen, handout, hand out, web based training, WBT, Net Based Training, NBT, computer based training, CBT, virtual learning environment, virtual university, für die Schule, Seminar, Seminare, Vorgehensweise, Pädagogik, Paedagogik, Akademie, Onlineacademie, Onlineakademie, Wissen, Unterrichtsvorbereitung für das Fach, Unterricht, für Lehrer, für Lehrerinnen, Referat, Referate, Hausaufgabe, Hausaufgaben, Tip, Tipp. Tipps und Tricks, Tips und Tricks, Methode, Methoden, Methodik, Funktion, Funktionsweise, Aufbau, Prinzip, Grundlage, Grundlagen, Internetschulung, Unterlage, Unterlagen, Struktur, Frage, Fragen, Antwort, Antworten, Schulunterricht, zum erlernen, was ist das?, wie?, lerne, Onlineausbildung, Onlinelehrgang, Onlinekurs, Onlinebuch, Webbuch, Academy, Fachhochschule, FH, TFH, Hochschule, Universität, Universitaet, Uni, Schule, Berufsschule, Gymnasium, Erste Schritte mit, Dozent, Dozenten, Zusammenfassung, Übersicht, Term, Fachwort, Fachbegriff, Fachbegriffe, Grundbegriff, Grundbegriffe, Lektion, Lektionen, Bedienungsanleitung, Bedienungsanleitungen, Spezialist, Spezialisten, Coaching, Coach, Fachbuch, technologie, Unterschied zwischen, Unterschiede zwischen, lehren, unterrichten, für das Studium, für Studenten, für Studentinnen, für Studierende, für Schüler, für Schülerinnen, Wie kann ich, Wie kann man, Hilfe, selber, erstellen, Erstellung, Beginner, Online-Seminar, Online-Kurs, Online-Schulung, ich, gebrauchsanweisung, gebrauchsanleitung, Bedienungsanweisung, Einweisung, Kurzinfo, Internet-Kurs, Internet-Kurse, Online-Training, Intensiv, Intensivkurs, Vortragsreihe, Präsentation, Grundzüge, Mitschrift, Mitschriften, Verständnis, verstehen, anwenden, Hintergrundwissen, Hintergrund, Hintergründe, content, Funktionsprinzip, Schritt für Schritt; E-Learning; elearning; online learning; Fernlehre, Fernlehrgang, Fernlehrgänge, Referent, Referenten, Fernkurs, Fernkurse, Fernstudium, Fernschule, Fernuniversität, Fernlehrer, Denken, Qualifizierungsmaßnahme, Qualifizierung, Qualifizierungen, Volkshochschulkurs, Volkshochschulkurse, Internet-Learning-Plattform, Online-Learning-Plattform, E-Learning-Plattform, Internetlearning-Plattform, Onlinelearning-Plattform, Elearning-Plattform, jetzt, Kochbuch, einfach erklärt, Kenntnis, Kenntniss, Kenntnisse, deutsche Hilfe, lernen und verstehen; blended learning; courseware, Profi, Profis, professionell, professionelle, professionelles, profesionell, profesionelle, profesionelles, professionel, gekonnt, für Könner, Grundkurs, Leistungskurs, Aufbaukurs, Lehrtext, Lehrtexte, Fachtext, Fachtexte, Ausarbeitung, distance learning, Online Seminar, distance education, Online Tutorium, Online Tutorien, technology-based learning, Computer based learning, CBL, Internet Based learning, IBL, Web based learning, WBL, online-learning, OL, online-training, OT, CAI, Computer Assisted Instruction, CUU, Computerunterstützter Unterricht, Computer-unterstützter Unterricht, Know how, Grundkenntnis, Grundkenntnisse, Kompetenz, Schulungsunterlagen, Insiderwissen, Rat, Lehrerinnen und Lehrer, ABC, Überblick, Arbeitsblatt, Sekundarstufe, Oberstufe, Material, Materialien, Unterrichtsentwurf, Unterrichtsentwürfe, Lerntip, Lerntips, Lerntipp, Lerntipps, ebook, schnell lernen, Lerner, Lernender, Lernende Erwachsenenbildung, Frage und Antwort, Selbststudium, Selbstudium, Umschulung, , kostenlos, kostenlose, kostenloses, kosten los, kosten lose, kosten loses, gratis, free, frei, freie, freies, privat, private, privates, homepage, home-page, home page, website, web site, webpage, web-page, web page, webpages, web-pages, web pages, webseite, Web-Seite, Webseite, Webseiten, Web-Artikel, Web Artikel, online, on-line, on line, download downloaden, down load, or, deutsch, deutsche, deutsches, deutscher, Deutschland, deutschsprachig, deutschsprachige, deutschsprachiges, german, germany, and, uebersicht, Uerbersicht, uebersichten, Uebersichten, Übersicht, übersicht, Übersichten, übersichten, Uebersicht, uebersicht, Uebersichten, uebersichten, Info, Infos zu, Information über, ueber, Informationen über, Auskunft, Auskünfte, Auskuenfte, Dienst, PbclevtugFgrsnaEnz, Angebot, Angebote, Anbieter, server, für, fuer, in, an, keyword, keywords, key word, keywords, internet, internets, net, network, net work, networks, net works, web, www, world wide web, Theorie, Praxis, Anwendung, DV, IT, glossar, fachwörterbuch it-glossar, computer lexikon, Computerlexikon, Computer-Lexikon, Lexikon, computer lexicon, Computerlexicon, Computer-Lexicon, Lexicon, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 was ist ein, was ist das, was sind, definiere, definition, define, Inhalt, html, xhtml, free im netz, PDF Text, digital, digitale, binär, binäre, elektronisch, elektronische, fachbegriff, fachbegriffe, konzept, Begriff, allgemein, allgemeine, allgemeines, Technik, Datentechnik, Digitaltechnik, Binätechnik, online lesen; , Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd720810, slrprddef720810, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/c++_wirkoperator_de