Diese Lektion enthält ein erstes kleines Programm als Material für erste Schritte mit einem C++-Entwicklungssystem.
(C++, Hallo Welt, C++, C++ Beispiel, C++ Beispielprogramm, hello, world, hello Welt, Hallo world, erstes Programm), Lektion, Seite 720799 https://www.purl.org/stefan_ram/pub/c++_halloprogramm_de (Permalink) ist die kanonische URI dieser Seite. Stefan Ram ↑C++-Kurs
Ein erstes C++-Programm
Diese Lektion stellt ein erstes Beispiel eines C++-Programms vor.
Sonderzeichen
C++-Programme enthalten manchmal einige Sonderzeichen, deren Namen im folgenden angegeben werden:
»{« „geschweifte Klammer auf“
»}« „geschweifte Klammer zu“
»#« „Nummernzeichen“
"<" „kleiner als“ (oder „spitze Klammer auf“)
">" „größer als“ (oder „spitze Klammer zu“)
»:« „Doppelpunkt“
»;« „Semikolon“
»"« „Anführungszeichen“
»\« „inverser Schrägstrich“
Varianten der Schreibweise
Es kann sein, daß das folgende Beispielprogramm etwas anders aussieht als ähnliche Programme aus anderen Quellen. Dies liegt daran, daß es verschiedene mögliche Schreibweise für C++‑Programme gibt, wie später ausführlicher behandelt werden wird.
Der erste Quelltext
Ein in C++ geschriebenes Programm wird auch manchmal Quelltext genannt, um es von anderen Versionen des Programms zu unterscheiden, welche daraus erzeugt werden. Aber auch ein Teil eines solchen Programms wird Quelltext genannt.
Quelltext wird auch als Code (Aussprache /koʊd/) bezeichnet.
⚠ Die Zeile »main.cpp« vor der folgenden Wiedergabe des Quelltextes gehört nicht zum Quelltext, sondern gibt den Namen an, unter dem dieser gegebenenfalls als Datei zu speichern ist. Der Quelltext beginnt mit dem ersten Nummernzeichen »#« und endet mit der geschweiften Klammer zu »}«.
int main() { ::std::cout << "Hallo, Welt"s << "\n"s; }
Erwartetes Verhalten des Programms
Wenn eine C++-Implementation das tut, was ein Programm von ihr verlangt, sagt man auch, daß die Implementation das Programm ausführe oder daß das Programm laufe oder ablaufe. Die Veranlassung des Ablaufs eines Programms wird Starten des Programms genannt.
Das oben aufgelistete Programm gibt nach seinem Start den Text »Hallo, Welt« auf eine Schreibfläche, die „Konsole“ oder (hier) »::std::cout« genannt wird, aus.
::std::cout
Hallo, Welt
Übungsfragen
? Übungsfrage
main.cpp
#include <iostream> #include <ostream> #include <string> using namespace ::std::literals; int main() { ::std::cout << "Hallo, Welt"s << "\n"s; }
Wie viele Zeilen hat der obenstehende Quelltext?
? Einsetzen in eine Lücke *
Das Einsetzen eines Textes in eine Lücke kommt beim Programmieren an verschiedenen Stellen vor. Hier soll es schon einmal vorgestellt werden, obwohl es erst etwas später benötigt wird.
Das Zeichen »…« wird Ellipse genannt. Die Schreibweise »a…b:c« soll (nur in dieser Übungsfrage) bedeuten, daß der Text hinter dem Doppelpunkt »:« in die mit der Ellipse »…« gekennzeichneten Lücken in dem Text vor dem Doppelpunkt eingesetzt werden soll.
Welcher Text ergibt sich dann für »a…b:c«?
Welcher Text ergibt sich dann für »a…b…d:c«?
Übungsaufgabe
/ Programm starten
In einem Unterrichtsraum wird der Dozent an dieser Stelle zeigen, wie das erste C++-Programm dieser Lektion gestartet werden kann. Dies soll dann von jedem Kursteilnehmer nachgemacht werden.
Web-IDEs
Compiler Explorer (godbolt.org) (gcc, clang, MSVC, icc)
Wandbox (gcc)
ideone
Coliru (Linux shell)
liveworkspace.org (gcc und clang)
rise4fun.com/vcpp (vc++)
ideone.com
C++ Insights (clang)
cpp.sh (interactive I/O)
rextester (collaborative)
Entwicklungssysteme für Windows (64)
https://nuwen.net/mingw.html (wohl von Stephan T. Lavavej)
Unter Linux ist ein C++-Entwicklungssystem oft schon installiert oder kann mit einem Paketverwalter installiert werden.
Unter MacOS kann ein ein C++-Entwicklungssystem wohl im Rahmen von XCode installiert werden.
/ Programmausgabe ändern
Die Ausgabe des Programms soll von »Hallo, Welt« in »Musik« verändert werden. Dazu ist die Datei »main.cpp« in der letzten Zeile zu verändern. Zur Kontrolle soll das Programm dann gestartet werden.
Hinweise zur Wortherkunft ⃗
iostream “input/output stream”
ostream “output stream”
int von “integer”
cout von “character output”
std von “standard”
Vorläufige Erklärung *
Die genauen Details der Bedeutung aller Teile des Programms werden im Laufe des Lehrgangs ausführlich erklärt werden. In dieser Lektion folgt zunächst eine vorläufige und etwas vereinfachende Erklärung.
Das Hauptprogramm »main«
Das Programm enthält die Festlegung eines Programms »main« (des Hauptprogramms), welches mit »int main() {« beginnt und mit des Quelltextes letzter geschweifter Klammer zu »}« endet. Beim Start des Programms wird das gemacht, was in diesem Hauptprogramm festgelegt wurde.
int main() { ::std::cout << "Hallo, Welt"s << "\n"s; }
Informationsquellen
Bei Verwendung bestimmter Sprachelemente in einem Programm, ist es nötig, am Anfang des Programms bestimmte Informationsquellen anzugeben. So ist die erste Zeile »#include <iostream>« beispielsweise nötig, wenn »::std::cout« verwendet werden soll.
int main() { ::std::cout << "Hallo, Welt"s << "\n"s; }
Wenn die Implementation auf die Zeile »#include <iostream>« stößt, so führt dies dazu, daß sie sich eine Informationsquelle namens »iostream« durchliest, in der die Bedeutung von »::std::cout« erklärt wird. Danach kennt die Implementation dann »::std::cout« und kann diesen Text verstehen, wenn er in der letzten Programmzeile erscheint.
Verzeichnisse
Verschiedene Namen der Programmiersprache sind in verschiedenen Verzeichnissen gespeichert.
Bei »"Hallo, Welt"s« handelt es sich um eine Textangabe mit einem »s« am Ende. Dieser Name »s« gehört zum Verzeichnis »::std::literals«. Die Verzeichnisangabe »using namespace ::std::literals;« sagt der Implementation, in welchem Verzeichnis sie nach Namen suchen soll. Dadurch findet sie dann den Namen »s«, wenn dieser am Ende von »"Hallo, Welt"s« verwendet wird und kann dessen Bedeutung nachschlagen.
Wir könnten hier zwar auch auf das »s« und die Verzeichnisangabe verzichten, aber später wird es Fälle geben, in denen die Schreibweise mit dem »s« vorteilhaft ist. Der Einheitlichkeit halber verwenden wir diese Schreibweise in diesem Kurs von Anfang an durchgängig.
int main() { ::std::cout << "Hallo, Welt"s << "\n"s; }
transcript
Hallo, Welt
Während der Umstellung des Kurses auf die Schreibweise mit einem »s« könnte aber in einigen Lektionen auch noch die Schreibweise ohne »s« zu finden sein.
Anweisungen
Der Inhalt der geschweiften Klammern ist noch eine Erklärung wert, denn er legt fest, was das Programm eigentlich tun soll.
Eine Anweisung ist ein Text, der einem Computer sagt, was er tun soll.
Die Funktion »main« enthält die Anweisung »::std::cout << "Hallo, Welt"s << "\n"s;«, welche die Ausgabe des Texts »Hallo, Welt« auf die Schreibfläche »::std::cout« (den Bildschirm) bewirkt. Dies ist es somit, was dieses Programm tun wird.
»::std::cout« bezeichnet das Ziel der Ausgabe, die Schreibfläche, auf welche der Text ausgegeben wird. Das pfeilartige Symbol »<<« symbolisiert das Kopieren des Rechtstehenden auf etwas vor dem »<<« Stehendes, hier also das Kopieren des Textes »Hallo, Welt« auf die Schreibfläche »::std::cout«. »"\n"s« steht für ein Zeilenende und schließt somit die Ausgabe ab.
int main() { ::std::cout << "Hallo, Welt"s << "\n"s; }
transcript
Hallo, Welt
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 stefanram720799 stefan_ram:720799
C++, Hallo Welt, C++, C++ Beispiel, C++ Beispielprogramm, hello, world, hello Welt, Hallo world, erstes Programm
Hallo Welt, hello, world, C++, C+, cpp, cxxm
Hallo, Welt! C++ erklärung;
C++ Hallo, Welt! howto;
erklärung Hallo, Welt! in C++;
C++ was ist Hallo, Welt!;
was ist Hallo, Welt! in C++;
was bedeutet Hallo, Welt! in C++ erklärung;
was Hallo, Welt! in C++ bedeutet;
was heisst Hallo, Welt! in verbindung mit C++?
was bedeutet Hallo, Welt! bei C++?
was heisst Hallo, Welt! in verbindung mit C++?
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, slrprd720799, slrprddef720799, 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++_halloprogramm_de