C++ Frage

Taygen

Cadet 2nd Year
Registriert
Jan. 2019
Beiträge
24
Guten Abend, ich versuche mit in C++ rein zu fuchsen aber verstehe nicht so ganz wofür das "<iostream>" steht, was "using namespace std;" aussagt und was mit "int main()" gemeint ist, da das bei den meisten compilern ja immer schon vorher eingetragen ist und ich mich damit noch nicht wirklich mit beschäftigt habe😅 habe schon im Internet gesucht aber nichts wirklich für mich verständliches gefunden... Hoffe ihr könnt mir weiter helfen. ^^
 
Hi,
ist zwar nur C, aber vielleicht hilft dir das weiter:
http://openbook.rheinwerk-verlag.de/c_von_a_bis_z/
oder hier die Übersicht:
https://www.rheinwerk-verlag.de/programmierung-maker/programmiersprachen/c-und-c/
Zitat von Rheinwerk-Verlag:
Rheinwerk <openbook> ist ein kostenloser Service von uns für Sie. Wir bieten Ihnen auf dieser Seite die HTML-Version eines vollständigen Buches für Ihre Aus- und Weiterbildung.
Also lass dich nicht vom Preis erschrecken ;-)
Sorry hier die openbooks:
https://www.rheinwerk-verlag.de/openbook/?GPP=openbook
 
Machst du jetzt gerade die Hausaufgabe für morgen? ^^
 
  • Gefällt mir
Reaktionen: BeBur, madmax2010, Fortatus und eine weitere Person
Google:

using namespace std; macht all das, was im Namensraum std enthalten ist und durch Header bereits eingebunden wurde, im aktuellen Namensraum bekannt. ( Funktionen, Typen, ... )


iostream bedeutet input output stream. ... Dateien wie iostream werden Header-Dateien genannt, weil sie am Anfang eines Programms eingebunden werden (head = engl.

Die main-Funktion ist das Herzstück eines jeden Programms und wird auch häufig als Hauptfunktion bezeichnet. Sie muss in jedem deiner Projekte genau einmal enthalten sein. Das liegt daran, dass sie als einzige Funktion automatisch bei Programmaufruf ausgeführt wird. Damit ist dein Programm ohne sie nicht funktionsfähig, beziehungsweise nicht startbar. Wenn sie endet, gibt sie zudem deinem Betriebssystem oder der Software, die es gestartet hat, einen Rückgabewert zurück. Dieser ist null, wenn das Programm erfolgreich beendet, also ohne Fehler durchlaufen wurde. Sollten beim Ablauf Fehler aufgetreten sein, so gibt sie einen anderen Wert zurück.
 
Die erste Amtshandlung ist sowieso "using namespace std" zu löschen ;)
 
  • Gefällt mir
Reaktionen: m.c.ignaz, BeBur und new Account()
@bluricane Vielen Dank ich guck es mir mal an^^
Ergänzung ()

@wayne_757 Haha nein alles gut dafür missbrauch ich euch nicht... Habe von allein Interesse dafür entdeckt
Ergänzung ()

@Kerasto Achso okay danke, gibt es nur iostream oder auch andere? Weil das ja in diesen Kacheln steht.
Ergänzung ()

@tollertyp Hauptsächlich Videos angeguckt oder mich im Internet belesen bin aber erst beim Hello World...mit eigenen Texten schreiben,Modifikatoren und generell dem Grundaufbau.
Ergänzung ()

@T_55 Merk ich mir aber wieso denn wenn ich fragen darf?😅
 
Zuletzt bearbeitet:
Es gibt neben iostream noch sseeeeeehr viele andere. Diese Header sind Teil der C++ STL (Standard Library). Deine Grundlagenlektüre sollte diese eigentlich sehr früh erwähnen.
 
Wenn du dich "reinfuchsen" möchtest in die Programmierung in C++ (oder was auch immer), solltest du dir erst mal vorknöpfen die grundlegendsten Basics, die du offensichtlich noch nie zu Gesicht bekommen hast, zu erlernen.
Es gab mal eine Zeit, in der man sogenannte Bücher hierfür verwendet hat. Heutzutage geschieht dies meist mit Hilfe von Tutorials und Youtube Videos.

Im Ernst: Beschäftige dich einfach mal ernsthaft damit. Nur so lernt man das.

Ein Forum dient dann eher für Fragen, die man nicht so leicht selber beantworten kann.
Aber was main bedeutet oder wie und warum man namespaces verwendet, gehört eher nicht dazu.
 
  • Gefällt mir
Reaktionen: mental.dIseASe, BeBur, T_55 und 2 andere
Einfach jede dieser Fragen auf Englisch übersetzen und bei Google suchen und sie Stack overflow Antworten dazu lesen.

Ich verrate dir ein Geheimnis: Das ist die Methode mit der programmieren gelernt wird. Das mag auch alles in einem 200 Stunden Videokurs oder dem 500 Seiten Buch stehen, aber wenn man programmieren lernt ist man froh wenn man sich die Syntax für die for-Schleife merken kann. Der Rest wird meist auf Stack overflow nachgelesen.
Auch mehrfach. Es ist ganz normal ab und zu ein zweites oder dritte Mal auf der selben Seite zu landen, in der dies jährigen Stack Exchange survey gab es sogar die Frage wie man sich dabei fühlt :p.

Die ersten zwei Jahre verbringst du immer mehr Zeit auf Stack overflow als mit deinem Code.
 
BeBur schrieb:
Ich verrate dir ein Geheimnis: Das ist die Methode mit der programmieren gelernt wird

Dem widerspreche ich entschieden. Stack Overflow mag ein nettes Tool sein, wenn du weißt, was du tust. Wenn du als Fortgeschrittener eine Antwort liest und verstehst, wieso das so tut, ist das gut. Allerdings einem Anfänger sagen, er soll da suchen, den Code von dort übernehmen und eventuell vorhandenen Erläuterungen von Leuten glauben, nur weil sie "Reputation" und ein paar lächerliche "Badges" haben, ist fahrlässig.

Edit: Nichtsdestotrotz muss ich BeBur insofern recht geben, als Stackoverflow eine bessere Quelle zu sein scheint als die aktuellen Tutorials des TE, wenn nicht mal "main", "iostream", etc. erklärt werden :(
 
Zuletzt bearbeitet:
nullPtr schrieb:
Dem widerspreche ich entschieden. Stack Overflow mag ein nettes Tool sein, wenn du weißt, was du tust. Wenn du als Fortgeschrittener eine Antwort liest und verstehst, wieso das so tut, ist das gut. Allerdings einem Anfänger sagen, er soll da suchen, den Code von dort übernehmen und eventuell vorhandenen Erläuterungen von Leuten glauben, nur weil sie "Reputation" und ein paar lächerliche "Badges" haben, ist fahrlässig.
Ich hatte es mehr implizit geschrieben. Das eigentliche Lernen mithilfe von Büchern, guten Video-Kursen, Übungen machen, etc.
Aber bei Übungen und generell programmieren stellen sich für einen Anfänger dutzende und hunderte von solchen kleinen Fragen, wie sie der TE hier gestellt hat und für diese findet man in aller Regel hervorragende Antworten auf SO.
Von Code kopieren habe ich übrigens überhaupt nichts geschrieben, ich habe das Gefühl, dein Einwand ist sehr korrekt, aber ein Einwand auf etwas, das ich nicht geschrieben und auch nicht gemeint habe.
 
  • Gefällt mir
Reaktionen: nullPtr
@BeBur Du hast recht. Ich habe das "lernen" in dem Satz etwas zu weit ausgelegt. Du hast in der Tat niemanden dazu aufgefordert, Code von SO zu übernehmen. Ich ziehe diese Aussage zurück und heiße deine Konkretisierung in Post #14 explizit gut.
 
  • Gefällt mir
Reaktionen: BeBur
BeBur schrieb:
Die ersten zwei Jahre verbringst du immer mehr Zeit auf Stack overflow als mit deinem Code.
Kann ich so nicht bestätigen.
Das kann natürlich damit zusammenhängen, das es zu meiner Zeit noch kein stackoverflow gab. Es gab noch nicht mal Internet. :-)

Ich fand es auch immer viel spannender am Code zu experimentieren und zu gucken, was passiert dann wenn man hier was ändert dort was ändert. Wie lassen sich Befehle kombinieren und kommt dann auch das raus, was man erwartet.
Wir hatten auch damals schon Codebeispiele. Zugegeben. Alles bei weitem nicht so umfangreich wie das was heute zugänglich ist. Aber schon damals fand ich fertigen Code oder fertige Codeschnipsel eher unspannend. Ja. Als Anschauung von Wirkungsweisen von Befehlen ganz nett. Aber eher nicht, um die direkt zu verwenden oder damit rumzuspielen. Ich will nicht behaupten das das gar nicht vorkam. Aber eher punktuell.

Interessant wurden Codebeispiele erst später. Wenn man dann halt sich bestimmte APIs anguckte und so und hatte die eigentlich auch verstanden aber es gab einzelne Aspekte die einem unklar waren und die sich einem aus der Dokumentation allein auch nicht unmittelbar (oder halt nur mit größeren Aufwand) ergaben.
Dann wurden Codebeispiele interessant. Auch dann waren sie überhaupt erst wirklich brauchbar, weil der Großteil im Programmcode ist einem ja bekannt. Wenn man als Anfänger draufguckt ist jede Zeile, jedes Zeichen das sind alles nur böhmische Dörfer. Man kann das natürlich als Ganzes verwenden oder so, aber versteht davon ja immer noch nicht, was drin passiert.

Jedenfalls in dem Zusammenhang werden konkrete Codebeispiele wirklich gewinnbringend. Nicht für sich allein stehend, sondern wenn man sich Wissen mit Hilfe von Dokus und anderen Quellen erschließt.

Ob stackoverflow und Co einem alleine aber wirklich weiterbringen, wage ich zu bezweifeln. Ich meine, solche Programmierer gibt es auch. Die grob verstehen und dann da halt irgendwelchen gefundenen Code zusammenstöpseln und der läuft dann auch irgendwie. Aber mit verstehen hat das weniger zu tun. Und wehe, es tritt mal ein Problem oder Fehler auf. Das Fass Bug/Sicherheitslücken will ich an der Stelle auch gar nicht erst aufmachen.

Und in so gesehen kann ich Deine Einschätzung a-la "man verbringt seine Zeit mehr auf stackoverflow als im eigenen Code" nicht teilen. Also nicht mal annähernd. Es ist nicht mal Hälfte-Hälfte. Sondern deutlich mehr im Code und hin und wieder bemüht man auch mal Codebeispiele von stackoverflow und Co, um sich eine Sache mehr verständlich zu machen.

Kann aber auch alles eine individuelle Frage sein. Eine Frage der Präferenzen und wie man selbst am besten lernt. Vielleicht lernt ja jemand besser wenn er exzessiv Beispiele studiert. Verallgemeinern lässt sich das aber nicht.
 
  • Gefällt mir
Reaktionen: proserpinus

Ähnliche Themen

Antworten
10
Aufrufe
952
  • Gelöst
2
Antworten
28
Aufrufe
1.635
Antworten
12
Aufrufe
2.105
  • Geschlossen
2 3
Antworten
51
Aufrufe
3.113
Zurück
Oben