Hast du mal PHP ohne Webserver ausgeführt? Da wird wunderschöner Code angezeigt ;)
Windows kann mit C++ rein gar nichts anfangen, genau so wenig wie Windows etwas mit Delphi, Visual Basic oder irgendeiner anderen Programmiersprache anfangen kann.
Schreibst du mit 2 unterschiedlichen Sprachen genau das selbe Programm kann Windows im kompilierten Zustand (abgesehen von den Infos die mitgegeben werden) nicht ein mal feststellen mit welcher Sprache gearbeitet wurde.
C++ besteht aus ganz vielen riesigen Bibliotheken mit einem gigantischen Funktionsumfang, auf diese Bibliotheken greift der Programmierer zurück (mittels include), das sähe dann so aus:
#include <iostream>), das
include erklärt sich wohl von selbst,
iostream steht für
Input/Output Stream und regelt Ein und Ausgaben am Computer, für gewöhnlich werden für Eingaben die Tastatur und für Ausgaben ein Monitor verwendet.
Dann fängt man an mit den Funktionen der includeten Bibliothek Programme zu schreiben, in diesem Fall wäre es z.B.:
- Code: Alles auswählen
#include <iostream>
using namespace std;
int main()
{
cout << "Ich bin ein angezeigter Text!";
return 0;
}
using namespace std; definiert welcher Namensbereich in der includeten Bibliothekverwendet werden, lässt man das ganze weg müsste es so aussehen:
- Code: Alles auswählen
#include <iostream>
// using namespace std; lassen wir weg
int main()
{
// hier müssen wir den namespace nun angeben bevor wir die Funktion nutzen:
std::cout << "Auch ich bin ein kleiner schnuckeliger Text!";
return 0;
}
Unser Code ist fertig, unser erstes kleines Programm. Als nächstes fängt der so genannte "
Interpreter" an zu arbeiten, dieser durchläuft den Code und sucht nach Fehlern, z.B.:
- Code: Alles auswählen
// der Interoreter fängt an und merkt: aha, eine Bibliothek wird includet, alles korrekt
#include <iostream>
// Jetzt wird der Interpreter stutzig, da in dieser Zeile das Komma fehlt heißt der namespace plötzlich "using namespace std int main;" <-gibt es nicht, also merkt der Interpreter sich "In Zeile 2 fehlt ein ;"
using namespace std
// Hier durchläuft der Interpreter jetzt alle Funktionen, er wird keine Fehler finden und ist zufrieden
int main()
{
cout << "Ich bin ein angezeigter Text!";
return 0;
}
// jetzt gibt der Interpreter den Fehler aus und verbietet dem Compiler zu compilieren
Gehen wir jetzt davon aus das wir keinen Fehler gemacht haben würde der Interpreter dem Compiler grünes Licht geben.
Da Windows die Bibliotheken (z.B. iostream) gar nicht kennt, und auch nicht weiß was ein namespace ist, muss der Compiler nun den fertigen Code in eine für Windows verständliche Sprache umwandeln (oder eben Linux, etc.).
Ich hoffe ich konnte ein wenig aufklären, ansonsten bin ich für Fragen gerne offen
