Fehlermeldung bei Dev-C++
-
Hallo zusammen,
ich versuche gerade c++ mit Hilfe diverser Tutorials aus dem Netz zu lernen.
Ich besitze noch den Borland 2.0 Compiler, da dierser ja nicht mehr der aktuellste ist, habe ich mir den Dev-C++ von Bloodshed heruntergeladen.Nun habe ich ein Problem wenn ich folgendes Programm versuche zu compilieren:
#include <iostream.h>
#include <stdio.h>void main()
{
cout<<"Hier steht ein Text"<<endl;
getchar ();/* wait for input */
};Mit dem alten Borland 2.0 klappt das ohne Probleme, der Dev-C++ liefert mir immer folgende Fehler bzw. Warnungen:
1 D:\Programme\Dev-Cpp\include\c++\3.3.1\backward\iostream.h:31, from Text_Dev.cpp In file included from D:/Programme/Dev-Cpp/include/c++/3.3.1/backward/iostream.h:31, from Text_Dev.cpp
2 D:\Programme\Dev-Cpp\include\c++\3.3.1\backward\backward_warning.h:32 #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <sstream> instead of the deprecated header <strstream.h>. To disable this warning use -Wno-deprecated.
5 C:\Dokumente und Einstellungen\AK\Eigene Dateien\C-Source\TestProgramme\Text_Dev.cpp `main' must return `int'
Wenn ich das Programm wie folgt schreibe habe ich keine Probleme:
#include <iostream.h>
#include <stdio.h>int main()
{
cout<<"Hier steht ein Text"<<endl;
getchar ();/* wait for input */
return 0;
};Was habe ich nicht verstanden (soweit man das beurteilen kann), oder wo habe ich einen Fehler gemacht.
Vielen Dank
Andreas
-
Das hat damit zu tun, dass dein Tutorial veraltert ist... in "neuem" und korrektem C++ muss das so gehen:
inlcude <iostream> // ohne ".h" ! using namespace std; // die Zeile ist neu! int main() // INT main, nicht VOID main { cout << "Hello, World" << endl; return 0; }
-
Oki doki,
vielen Dank. Was bedeutet bzw. bewirkt denn die zweite Zeile?
Gibt es denn die Routine, die keinen Rückgabewert mehr hat nach dem Prinzipvoid main()
{
...
}
gar nicht mehr, muss man also immer einen Null-Wert zurückgeben?Andreas
-
Theophrastus schrieb:
Oki doki,
vielen Dank. Was bedeutet bzw. bewirkt denn die zweite Zeile?
http://tutorial.schornboeck.net/namespace.htm
Theophrastus schrieb:
Gibt es denn die Routine, die keinen Rückgabewert mehr hat nach dem Prinzip
gar nicht mehr, muss man also immer einen Null-Wert zurückgeben?http://fara.cs.uni-potsdam.de/~kaufmann/?page=GenCppFaqs&faq=main#Answ
-
Vielen Dank!