Verschiedene C++ Varianten? oO
-
lol?
#include <iostream.h> passt für meine begriffe..
ist kein c++ header - und ich glaube auch nicht, dass der c-header so heißt...int main()
und nicht void main()
in C ist es übrigens auch int main(void)int 1;
bcb schluckt das? OO
wie schlecht ist das denn...bb
-
unskilled schrieb:
int 1;
bcb schluckt das? OONö.
-
ist kein c++ header - und ich glaube auch nicht, dass der c-header so heißt...
hat aber funktioniert komischerweise aber nur bei borland, bei visual net..
int main()
und nicht void main()mir wurde vorgegeben void main() komischerweise ^^
ich HASSE studien
alles fürn arsch ^^
-
Ihr seit scheinbar noch nicht lange mit C++ beschäftigt

Zu Beginn von C++ bis etwa 1995 gab es nur alle Header mit der Endung .h
Er mit den den Erweiterungen Ende der 90er wurden die Endungen ohne .h als Standard eingeführt.
-
loggasi schrieb:
is des studium wohl veraltet oO?
Wenns wenigstens nur das wäre. Aber
int 1,2,3,4;ist wirklich bedenklich.loggasi schrieb:
mir wurde vorgegeben void main() komischerweise ^^
ich HASSE studien
alles fürn ***** ^^Dann bestell dir lieber ein ordentliches Buch wie den C++-Primer oder Thinking in C++.
-
f.-th. schrieb:
Ihr seit scheinbar noch nicht lange mit C++ beschäftigt

Zu Beginn von C++ bis etwa 1995 gab es nur alle Header mit der Endung .h
Er mit den den Erweiterungen Ende der 90er wurden die Endungen ohne .h als Standard eingeführt.Eben! Und in C (hiess?) es deswegen iostream.h! oder nicht?
-
Aber int 1,2,3,4; ist wirklich bedenklich.
ja gut hab mich da selber vertan mit meiner übereiligkeit sollte wenn dann als wort ausgeschrieben sein
int eins, zwei .....
-
loggasi schrieb:
hat aber funktioniert komischerweise aber nur bei borland, bei visual net..
Es gab vor dem Standard verschiedene Compiler die <iostream.h> benutzt haben. Der BCB akzeptiert ihn wohl aus Kompatibilitätsgrnden noch. Der erste C++ Standard hat die <x.h>-header allerdings als veraltet gebrandmarkt. Ein aktueller BCB sollte eigentlich auch wenigstens eine entsprechende Warnung ausgeben.
loggasi schrieb:
mir wurde vorgegeben void main() komischerweise ^^
Ähnlich wie oben: einzelne Compiler akzeptieren das vielleicht aus historischen Gründen. Im Standard steht explizit drin dass der Rückgabetyp int sein muss. AFAIK auch im C99 Standard (beim C90 bin ich mir nicht sicher).
Frag deinen Prof am besten mal, ob er schon mitbekommen hat dass es einen C++-Standard gibt. Seit 1998...
-
ok danke für eure antworten jetzt weiss ich endlich mal bescheid weil ich laufend annen kopp krieg das des falsch is und bla und so..
jjetzt nur noch eine frage zum schluss..
2 bücher wurden ja schon erwähnt...(werd ich mir anschauen)
habt ihr noch i-welche tips womit ich das gut lernen kann?
ausser inet tutorials (es sei denn ihr habt spezielle die wirklich gut sind)..
-
loggasi schrieb:
ok danke für eure antworten jetzt weiss ich endlich mal bescheid weil ich laufend annen kopp krieg das des falsch is und bla und so..
Also ist das dein Code und nicht von der Uni? Nicht dass hier jemand ein falsches bild von SGD bekommt ...

-
ne des is der code von der SGD...
ich mein so von foren usw bekomm ich immer annen kopp geschmissen das es falsch is, nur konnte mir keiner sagen WARUM es falsch is ^^..
-
Hossenscheisser schrieb:
Eben! Und in C (hiess?) es deswegen iostream.h! oder nicht?
Nein, weil es in C keine IO-Streams gibt und auch nie gegeben hat.
C++-Standardheader haben nie eine Dateiendung!
loggasi schrieb:
habt ihr noch i-welche tips womit ich das gut lernen kann?
Ich würde dir einfach raten, genügend Zeit in die Theorie reinzustecken und nicht übereifrig etwas Fertiges programmieren zu wollen. Achte auch darauf, dass du die einzelnen Teile auch gut begriffen hast (z.B. Zeiger sind recht wichtig für das Grundverständnis).
-
loggasi schrieb:
ch mein so von foren usw bekomm ich immer annen kopp geschmissen das es falsch is, nur konnte mir keiner sagen WARUM es falsch is
Weil es nicht dem C++ Standard entspricht (Und der ist von 1998, also schon ein paar Jährchen alt). Dein Programm muss von keinem C++ Compiler unterstützt werden, und läuft nur weil der Compilerhersteller bei der Auslegung recht gnädig ist.
In sofern: Die SGD scheint den Lehrauftrag nicht sehr genau zu nehmen.
-
loggasi schrieb:
ne des is der code von der SGD...
ich mein so von foren usw bekomm ich immer annen kopp geschmissen das es falsch is, nur konnte mir keiner sagen WARUM es falsch is ^^..
1. nein, ist es nicht...
der ist dem code max. ähnlich, weil du ihn falsch wiedergegeben hast... wenn du die beiden codes für gleich hältst, dann hör lieber auf mit programmieren lernen oder fang noch ma von vorn an zu lesen+lernen...2. haben ja nun echt genug leute geschrieben... variablennamen dürfen nur
a-z, A-z, _ und 0-9 beinhalten(aber nicht mit einer ziffer beginnen - insbesondere nicht nur eine zahl sein)...
ist ja jz auch nicht soo unlogisch, meinst du nicht auch?!bb
-
st ja jz auch nicht soo unlogisch, meinst du nicht auch?!
hab mich ja inzwischen 3 mal korrigiert nur hats wohl keiner wahrgenommen.
hab ja selbst gemerkt das ich das falsch geschrieben hab die zahlen aber der rest entspricht den büchern..
naja gut kann closed werden weiss ja bescheid jetzt
-
Ganz allgemein: Warum hat das Problem eigentlich nicht Java oder <bei Bedarf beliebige andere moderne Sprache einsetzen>? Oder lernt man auf der SGD etwa auch Java 1.1 oder sowas?
pumuckl schrieb:
AFAIK auch im C99 Standard (beim C90 bin ich mir nicht sicher).
Vor C99 gab es höchstens noch "main()". Und kein Rückgabetyp gleicht in C einem int-Rückgabetyp, ist also etwas anderes als "void main()". Es mag aber durchaus sein, dass allgemeine Unwissenheit ob dieser Tatsache zur hemmungslosen Verbreitung von "void main()" geführt haben könnte

-
LordJaxom schrieb:
Vor C99 gab es höchstens noch "main()". Und kein Rückgabetyp gleicht in C einem int-Rückgabetyp, ist also etwas anderes als "void main()". Es mag aber durchaus sein, dass allgemeine Unwissenheit ob dieser Tatsache zur hemmungslosen Verbreitung von "void main()" geführt haben könnte

In C vor C99 muß man auch "int main" benutzen. void main ist zwar nicht szandard, aber wenn mans macht und keinen Rückgabrwert braucht, passiert trotzdemm nichts schlimmes.
-
Rückgabewert brauchst du bei
main()eh nicht. Folgender Code ist legales C++ - im Gegensatz zuvoid main():int main() { }Wenn keine
return-Anweisung vorkommt, wird 0 zurückgegeben.
-
Nexus schrieb:
Rückgabewert brauchst du bei
main()eh nicht. Folgender Code ist legales C++ - im Gegensatz zuvoid main():int main() { }Wenn keine
return-Anweisung vorkommt, wird 0 zurückgegeben.Ja ich weiß. Aber selbst wenn du "void main" benutzt [was nicht Standard ist] passiert nichts böses, kein absturz das Programm läuft ganz normal
-
general bacardi schrieb:
Nexus schrieb:
Rückgabewert brauchst du bei
main()eh nicht. Folgender Code ist legales C++ - im Gegensatz zuvoid main():int main() { }Wenn keine
return-Anweisung vorkommt, wird 0 zurückgegeben.Ja ich weiß. Aber selbst wenn du "void main" benutzt [was nicht Standard ist] passiert nichts böses, kein absturz das Programm läuft ganz normal
Klar. Meistens ist das so. Allerdings darf alles passieren. In einem zukünfitigem Compiler verursacht das vielleicht, dass die Freiheitsstatue umfällt und eine Ente tötet, welche dann deinen tödlichen Virus über die ganze Erde verbreitet.
Und dann wärst du froh gewesen, wenn du da ein int hingemacht hättest.