Hallo, jemand im Bekanntenkreis will C lernen und fragt nach einer guten Programmieroberfläche für sein Vorhaben. Hat jemand eine Empfehlung, die ich weitergeben kann? Wäre Anjuta eine gute Wahl?
Für welches Betriebssystem? Linux: QtCreator oder Eclipse CDT. Windows: Visual Studio Community Edition. Wobei natürlich die Frage ist warum C und nicht C++. Für PCs gibt es sehr gute C++ Compiler und aufs letzte Byte Speicher achten muss man auch nicht.
Programmierer schrieb: > Für welches Betriebssystem? Danke für die schnelle Antwort! OS ist Win10. Programmierer schrieb: > Wobei natürlich die Frage ist warum C und nicht C++. Ich glaube, es geht um die private Vorbereitung auf einen späteren C-Kurs im Rahmen einer Ausbildung.
Jonatan schrieb: > OS ist Win10. Da läuft Anjuta gar nicht, das ist Linux-Only. Jonatan schrieb: > Ich glaube, es geht um die private Vorbereitung auf einen späteren > C-Kurs im Rahmen einer Ausbildung. Nagut... Für Komplett-Anfänger ist ein komplettes Rundum-Sorglos-Paket wie Visual Studio am Einfachsten, auch wenn dessen Compiler nicht der Beste ist.
Ich würde einen guten Texteditor empfehlen. Eine IDE ist für den Anfänger weder nötig noch sinnvoll.
zitter_ned_aso schrieb: > Ich würde einen guten Texteditor empfehlen. Eine IDE ist für den > Anfänger weder nötig noch sinnvoll. C ist schon kompliziert genug mit seinen diversen Fallstricken. Da muss man den Anfänger nicht auch noch mit dem Aufrufen von Compilern, Schreiben von Makefiles usw. erschlagen.
zitter_ned_aso schrieb: > Ich würde einen guten Texteditor empfehlen. Eine IDE ist für den > Anfänger weder nötig noch sinnvoll. Sehe ich auch so. Erst die Grundlagen lernen, denn solange kann man die ganzen bunten Knöpfe in der IDE sowieso nicht bedienen ;) Ich habe vor Jahren noch mit "Bloodshed Dev C++" angefangen. Für einen C-Anfänger ganz OK. Würde ich heute aber nicht mehr machen. Später bin ich auf Linux Mint umgestiegen. Und ich muss sagen: Ein Traum. Da hat man direkt alles was man benötigt, vor allem weil auch viele Tutorials auf Linux Tools basieren. Damals hab ich mich nur nicht getraut, weil ich vor der "bösen" Konsole "Angst" hatte. Aber völlig unbegründet.
c-lover schrieb: > Später bin ich auf Linux Mint umgestiegen. Und ich muss sagen: Ein > Traum. Da hat man direkt alles was man benötigt, vor allem weil auch > viele Tutorials auf Linux Tools basieren. Unter Linux ist es auch viel einfacher einen Compiler ohne Alles zu installieren. Einem Anfänger würde ich es nicht so zumuten MinGW oder den MS CL und dann noch GNU Make und ggf. MSYS oder Cygwin zu installieren, Pfade anzupassen, mit der cmd.exe herumzuhantieren, Fehlermeldungen manuell Code-Zeilen zuzuordnen usw. während man noch darüber grübelt was "const char* argv[]" bedeutet. Da ist ein All-In-One-Installer für VS doch viel einfacher.
Kann VisualStudio überhaupt richtig C? Wenn ich z.B. ein Buch zu C11 nehmen, kann ich dann alle Themen damit durcharbeiten?
zitter_ned_aso schrieb: > Kann VisualStudio überhaupt richtig C? Wenn ich z.B. ein Buch zu > C11 > nehmen, kann ich dann alle Themen damit durcharbeiten? Leider nicht so wirklich. Aber ob in so einem Ausbildungskurs modernes C gelehrt wird?
Programmierer schrieb: > C ist schon kompliziert genug mit seinen diversen Fallstricken. Da muss > man den Anfänger nicht auch noch mit dem Aufrufen von Compilern, > Schreiben von Makefiles usw. erschlagen. Naja, genau das gehört aber zum Programmieren auch dazu.
Mark B. schrieb: > Naja, genau das gehört aber zum Programmieren auch dazu. Schon. Aber das muss man nicht als Allererstes machen. In der Fahrschule durfte ich als Erstes auch erstmal nur Lenken. Dann erst kam Anfahren, Kuppeln, Schalten dazu, Verkehr beachten, Geschwindigkeit halten usw. Wenn der Lehrer mich direkt zu Anfang auf die 4-Spurige Hauptverkehrsstraße geschickt hätte, wäre ich schnell geflohen!
Borland C++ 5.5 gabs mal als kostenlosen Download. Das sollte auch unter Windows 10 laufen, ggf. im Kompatibilitätsmodus
Sven D. schrieb: > Borland C++ 5.5 gabs mal als kostenlosen Download. Das sollte auch > unter > Windows 10 laufen, ggf. im Kompatibilitätsmodus Der kann auch kein C11. Das alte Zeug muss man sich wirklich nicht antun.
zitter_ned_aso schrieb: > Kann VisualStudio überhaupt richtig C? Wenn ich z.B. ein Buch zu > C11 > nehmen, kann ich dann alle Themen damit durcharbeiten? Der Microsoft-Compiler ist hauptsächlich nur ein C++-Kompiler, der C99-Support sollte aber vollständig da sein. Bei C11 kommt es darauf an, ob du die neuen Features nutzt. Beispiel: Sowas wie "_Thread_local", dass es auch in C++ gibt, sollte funktionieren, allerdings gibt es den passenden C-Header "threads.h" in Visual C++ nicht.
Programmierer schrieb: > Sven D. schrieb: >> Borland C++ 5.5 gabs mal als kostenlosen Download. Das sollte auch >> unter >> Windows 10 laufen, ggf. im Kompatibilitätsmodus > > Der kann auch kein C11. Das alte Zeug muss man sich wirklich nicht > antun. Ist aber die am einfachsten zu bedienende IDE die ich kenne. Finde ich für einen Anfänger ideal. Ob das Teil nun C11 unterstützt dürfte wohl ziemlich egal sein wenn jemand die Grundlagen von C lerenen will.
Sven D. schrieb: > Ist aber die am einfachsten zu bedienende IDE die ich kenne. Und du kennst auch IDEs wie VS? Ich finde es immer gut mit Tools zu lernen die man auch für Real-World-Anwendungen nutzen kann. Das ist bei VS definitiv der Fall. Bei Tools für die man erstmal den Kompatibilitätsmodus braucht (gilt das auch für die produzierten Programme) vielleicht eher nicht so. Laut Web gibt es da übrigens nur den Compiler + Bibliotheken gratis. Also nix IDE und einfach zu bedienen.
Programmierer schrieb: > Sven D. schrieb: >> Borland C++ 5.5 gabs mal als kostenlosen Download. Das sollte auch >> unter >> Windows 10 laufen, ggf. im Kompatibilitätsmodus > > Der kann auch kein C11. Das alte Zeug muss man sich wirklich nicht > antun. Was ist an C nicht alt ... das ganze Konzept, Syntax etc. stammt doch aus der Steinzeit der Computertechnik. Wenn es ein moderner Einstieg sein soll, dann doch eher Java.
Das sowieso. Ich würde eher zu Python raten, das ist für den Einstieg noch "geschmeidiger" als das etwas starre Java. Aber C ist anscheinend vorgegeben.
zeitsurfer schrieb: > Was ist an C nicht alt ... das ganze Konzept, Vielleicht ist das ein Beweis dafür dass die Idee und die Umsetzung von C absolut richtig war? Und zwar so dass man einem Programmieranfänger noch ein Buch empfehlen kann, welches vor 30 Jahren geschrieben wurde? Geht das bei C++, Java, Python? Natürlich nicht! Da gibt es in regelmäßigen Abständen einen radikalen Schnitt. Weil die Leute, die hinter diesen Sprachen stehen, keinen Plan haben (und auch kein Rückgrat). Sie werden heute etwas zum Standard erklären und dich morgen auslachen, wenn du es benutzt. Denn morgen kommt eine neue Regelung raus die alles noch einfacher, sicherer und besser macht.
zitter_ned_aso schrieb: > Geht das bei C++, Java, Python? Natürlich nicht! Da gibt es in > regelmäßigen Abständen einen radikalen Schnitt. Völliger Blödsinn. Eines der Hauptziele von C++ ist Abwärtskompatibilität. Könnte man radikale Schnitte machen, wäre eine Menge alter Kram (insbesondere der aus C stammende) schon längst weg. Ein paar Details werden geändert/entfernt, aber diese lassen sich in bestehendem Code leicht reparieren. Und im Zweifelsfall kann man Compiler immer noch auf alte Sprachstandards stellen. Bei Java ist es ähnlich. Nur bei Python ist das nicht so. zitter_ned_aso schrieb: > Und zwar so dass man einem Programmieranfänger > noch ein Buch empfehlen kann, welches vor 30 Jahren geschrieben wurde? Und das ist ein Argument dafür alte Konzepte auf ewig weiter zu nutzen? Die Technik entwickelt sich weiter, es gibt neue Möglichkeiten, und man muss nicht ewig eine Sprache nutzen die so entwickelt wurde, dass man sie auf Computern der 70er nutzen konnte. Der Präprozessor, #include und die Notwendigkeit für Vorwärtsdeklarationen entstammen den Limitierungen dieser Computer und sind heute völlig überflüssig; moderne Sprachen wie Java und Python sind darüber hinweg. In C++ plagt man sich auch nur gezwungenermaßen damit herum. zitter_ned_aso schrieb: > Weil die Leute, die > hinter diesen Sprachen stehen, keinen Plan haben Niemand hat einen Plan, der exponentieller technischer Entwicklung über Jahrzehnte hinweg stand hält. Das sieht man auch an C, sonst gäbe es dort kein "int" und kein "#include" usw. Wer behauptet, dass die Errungenschaften der 70er der Weisheit letzter Schluss sind und danach nichts mehr kommt, ist ein Fanatiker.
zitter_ned_aso schrieb: > Ich würde einen guten Texteditor empfehlen. Da hast du vergessen, wie es als Anfänger war. Du brauchst chromacoding, Sprung zum Fehler, einen Button zum builden und ein paar zum Starten/debuggen, um dich auf den Quelltext konzentrieren zu können Wenn der Texteditor das (automatisch) kann, ist es eine IDE.
Ich bin mit der QT Creator IDE recht zufrieden. Die nutze nicht nur, um meinen PC programmieren, sondern auch für Mikrocontroller.
Visual Studio... Code soll kein schlechter Editor sein. Ich hatte ihn sogar mal installiert. Und wieder gelöscht. Weil er da irgendwelche Daten sammelt (telemetry reporting). Aber es gibt da auch wohl eine Version, die das nicht macht. VS ist ja nur für Windows.
A. S. schrieb: > zitter_ned_aso schrieb: >> Ich würde einen guten Texteditor empfehlen. > > Da hast du vergessen, wie es als Anfänger war. Nö. CygnusEd aufm Amiga, dazu Lattice C klassisch mit Makefiles, direkt von Unix aus rüberportiert. Das waren meine Anfänge. > Du brauchst chromacoding, Sprung zum Fehler, einen Button zum builden > und ein paar zum Starten/debuggen, um dich auf den Quelltext > konzentrieren zu können Früher hat ein vi auf einem VT102 völlig ausgereicht. Ja, ich bin alt. fchk
Programmierer schrieb: > Eines der Hauptziele von C++ ist Abwärtskompatibilität... > Nur bei Python ist das nicht so. Und damit haben die Entwickler eine ganze Menge Verwirrung und Ärger gestiftet. Mit dem Wechsel der Python Version von 2 zu 3 sind zum Beispiel mehr OpenERP Anwendungen/Plugins gestorben, als in der ganzen Zeit davor und danach. > Der Präprozessor, #include und > die Notwendigkeit für Vorwärtsdeklarationen entstammen den Limitierungen > dieser Computer und sind heute völlig überflüssig; moderne Sprachen wie > Java und Python sind darüber hinweg. In C++ plagt man sich auch nur > gezwungenermaßen damit herum. Präprozessor: Java hat schlicht keinen Präprozessor. Sehr viele größere Java EE Projekte fügen aber etwas Äquivalentes in Form von Plugins für Build Tools hinzu. Abgesehen davon besteht auch in C/C++ keinerlei Verpflichtung, dieses optionale Feature zu benutzen. #include: Gibt es auch bei Java, heißt dort aber import und man muss es sogar sehr viel mehr benutzen, als #include. Vorwärtsdeklarationen: Ich kann mich nicht erinnern, wann ich das (außerhalb von Header Dateien) zuletzt gebraucht habe. Insofern kann man das jetzt nicht als Mangel von C/C++ hinstellen. Auch dies ist ein optionales Features das man benutzen kann, aber nicht muss. > Wer behauptet, dass die Errungenschaften der 70er der Weisheit > letzter Schluss sind und danach nichts mehr kommt, ist ein Fanatiker. Ich jedenfalls nicht. Die Tatsache, dass diese Programmiersprache immer noch sogar bei neuen Produkten eingesetzt wird, zeigt für mich, dass sie nicht so schlecht sein kann, wie hier manche behaupten. Mir ist auf jeden Fall lieber, mit Softwareentwicklern zusammen zu arbeiten, die bewährte Techniken solide beherrschen, als "Skript Kiddies" die alle 6 Monate dem neuesten Schrei hinterher laufen und den Senior Entwicklern lauter offene Baustellen hinterlassen, während die Karavane schon weiter zieht. Ich habe noch kein Projekt gesehen, das an der Programmiersprache gescheitert ist. Wenn es ernsthafte Probleme gab, dann meisten wegen Mängel in der Dokumentation oder weil sich Leute komplexe Frameworks angetan haben, die sie nicht im Griff haben.
Stefan ⛄ F. schrieb: > Java hat schlicht keinen Präprozessor. Richtig, und das ist gut so. Stefan ⛄ F. schrieb: > Abgesehen davon besteht auch in C/C++ keinerlei > Verpflichtung, dieses optionale Feature zu benutzen. Ohne #include sind C und C++ kaum benutzbar. In C braucht man ihn für Pseudo-Konstanten, weil C im Gegensatz zu C++ kein echten Konstanten hat. Stefan ⛄ F. schrieb: > Gibt es auch bei Java, heißt dort aber import und man muss es sogar sehr > viel mehr benutzen, als #include. Nein, import kann man komplett weglassen indem man im Code die Klassen-Namen ausschreibt, wie z.B. "new java.io.File ();" o.ä., ist aber unüblich. Außerdem funktioniert der Mechanismus dort völlig anders als die stupide Text-Ersetzung von #include. Stefan ⛄ F. schrieb: > Ich kann mich nicht erinnern, wann ich das (außerhalb von Header > Dateien) zuletzt gebraucht habe. Genau darum geht es doch, dass man überhaupt Header mit den darin vorhandenen Forward Declarations braucht! In Java, C#, Python, ... brauchts so etwas überhaupt nicht, das machts einfacher und vermeidet Fehler. Stefan ⛄ F. schrieb: > Insofern kann man das jetzt nicht als > Mangel von C/C++ hinstellen. Das ist ein sehr großer Mangel. Wenn in der foo.h die Funktion anders deklariert ist als sie in der foo.c definiert ist, gibt's ein Chaos. Wenn man mehrere Header hat die voneinander abhängig sind gibt's auch ein lustiges Gebastel. Nur zu oft haben Libraries Header, die nur in einer bestimmten Reihenfolge inkludiert werden können. Weil Header wieder andere Header inkludieren kann es passieren, dass man sich im Code implizit auf der Vorhandensein des indirekt inkludierten Headers verlässt, und wenn sich die Library dort ändert kompiliert es nicht mehr. Kann in Java alles nicht passieren. Ja, es gibt Workarounds, aber ein Problem ist es trotzdem. Stefan ⛄ F. schrieb: > Auch dies ist ein optionales Features das > man benutzen kann, aber nicht muss. Wenn es sich um ein nichttriviales Projekt handelt, braucht man Header, #include und die in Headern befindenlichen Vorwärtsdeklarationen. Ohne "#include <stdio.h>" kann man nichtmal etwas ausgeben! Stefan ⛄ F. schrieb: > Ich jedenfalls nicht. Die Tatsache, dass diese Programmiersprache immer > noch sogar bei neuen Produkten eingesetzt wird, zeigt für mich, dass sie > nicht so schlecht sein kann, wie hier manche behaupten. "schlecht" ist ein schlechtes Maß. Für manche Dinge sind C und C++ angemessen, für viele nicht. Für "ich lerne als absoluter Anfänger programmieren" auch eher nicht. Der Hauptgrund für weitere Verwendung von C ist "ich kann nichts anderes". Stefan ⛄ F. schrieb: > als "Skript > Kiddies" die alle 6 Monate dem neuesten Schrei hinterher laufen und den > Senior Entwicklern lauter offene Baustellen hinterlassen, während die > Karavane schon weiter zieht. Du wirfst Vorgehensweisen, Programmiersprachen und die Kompetenz zum Entwickeln guten Codes durcheinander. Stefan ⛄ F. schrieb: > Ich habe noch kein Projekt gesehen, das an der Programmiersprache > gescheitert ist. Weil dieser Aspekt kaum analysierbar ist. Wenn man zu viel Zeit damit verschwendet die Eigenheiten der Sprache zu umgehen kann man schon mal Deadlines reißen. Wenn ich mir auf Arbeit den C-Code unseres Zulieferers angucke kann ich im Vorbei-Scrollen die Fehler aufzählen "Alignment-Regeln verletzt, verbotene Bezeichner verwendet, implizite Annahmen über Integer-Formate, böse Casts"... Bei Java ist das nicht so.
> Du brauchst chromacoding, Sprung zum Fehler, einen Button zum builden > und ein paar zum Starten/debuggen, um dich auf den Quelltext > konzentrieren zu können > > Wenn der Texteditor das (automatisch) kann, ist es eine IDE. Du beschreibst gerade... Arduino! (ausser "Sprung zum Fehler", was bei Anfängerfehler in C sowieso selten gelingt weil der Compiler anderswo als beim Fehler amok läuft...) Aber Arduino taugt schon für die ersten paar Lektionen in Grundlagen, dann ist Wechseln angesagt und danach sollte man ohnehin fit sein um selbst zu wissen was man will. > > zeitsurfer schrieb: Was ist an C nicht alt ... das ganze Konzept, > > Vielleicht ist das ein Beweis dafür dass die Idee und die Umsetzung > von C absolut richtig war? Und zwar so dass man einem > Programmieranfänger noch ein Buch empfehlen kann, welches > vor 30 Jahren geschrieben wurde? Genau: deswegen ist C immernoch und nur K&R geblieben, bis heute. C89, C99 und wie sie alle heissen hat es nie gegeben weil, ja: überflüssig. Ausserdem: egal ob ich 5, 15 oder 25 jährigen C-Code lese der von sog. "guten & erfahrenen" C-Programmierern geschrieben wurde, ist es in der Tat selten welcher über K&R-Niveau... Trost: das wird noch getoppt von FORTAN, ALGOL & COBOL.
ich wollte ja lcc32 vorschlagen, läuft aber nicht uner win10
Programmierer schrieb: > Wenn ich mir auf Arbeit den C-Code unseres Zulieferers angucke kann ich > im Vorbei-Scrollen die Fehler aufzählen "Alignment-Regeln verletzt, > verbotene Bezeichner verwendet, implizite Annahmen über Integer-Formate, > böse Casts"... Bei Java ist das nicht so. Da kann ich Dir helfen, ich erkenne solche Fehler in Java Programmen routiniert. Da sind solche Fehler genau so möglich. Aber eigentlich benutzt man für solche Kontrollen lint bzw Spotbugs. Ich möchte noch etwas zu #import sagen: Wenn dieses Konstrukt für dich schon ein großes Problem darstellt, dann frage ich mich schon wie Flexibel du eigentlich bist. Weil: Das ist für mich ein vollkommen unwichtiges Pillepalle Detail. Ich beschäftige mich eher mit der Implementierung von Geschäftsprozessen und Algorithmen, da spielt die Programmiersprache eine untergeordnete Rolle. Und glaube mir, ich kenne viele.
Stefan ⛄ F. schrieb: > Da kann ich Dir helfen, ich erkenne solche Fehler in Java Programmen > routiniert. Da sind solche Fehler genau so möglich. Das ganze UB-Zeug fällt da schonmal komplett raus. In Java ist es schon schwieriger Programme zu schreiben, die den Anschein haben zu funktionieren aber tatsächlich falsch sind.
> Stefan ⛄ F. schrieb: >> als "Skript >> Kiddies" die alle 6 Monate dem neuesten Schrei hinterher laufen und den >> Senior Entwicklern lauter offene Baustellen hinterlassen, während die >> Karavane schon weiter zieht. > > Du wirfst Vorgehensweisen, Programmiersprachen und die Kompetenz zum > Entwickeln guten Codes durcheinander. Das bringt es exakt auf den Punkt, wo C/C++ zum Hindernis wird.
Programmierer schrieb: > In Java ist es schon schwieriger Programme zu schreiben, > die den Anschein haben zu funktionieren aber tatsächlich falsch sind. Sicher, Java vermeide eine ganze Menge von häufigen Fehlern. Deswegen arbeite ich damit auch primär. Nur läuft Java eher schlecht auf kleinen Mikrocontrollern.
Sollte es nur um die kleinen MC Käfer gehen nimm Assembler. Ein hunderttausendstel der üblichen künstlich aufgeblasenen Hochsprachen/Tool-Bürokratie. System-Verständnis von der Pike auf.
Asm'ler schrieb: > Sollte es nur um die kleinen MC Käfer gehen nimm Assembler. Ein > hunderttausendstel der üblichen künstlich aufgeblasenen > Hochsprachen/Tool-Bürokratie. System-Verständnis von der Pike auf. Ich habe einzelne Sachen in Assembler programmiert und halte es für lehrreich. Aber für die tägliche Arbeit? Mein Chef würde mich auslachen und mich umgehend raus werfen.
Stefan ⛄ F. schrieb:. > Ich habe einzelne Sachen in Assembler programmiert und halte es für > lehrreich. Aber für die tägliche Arbeit? Mein Chef würde mich auslachen > und mich umgehend raus werfen. Du bist ja auch kein Anfänger mehr :)
Stefan ⛄ F. schrieb: > Da kann ich Dir helfen, ich erkenne solche Fehler in Java Programmen > routiniert. Da sind solche Fehler genau so möglich. Mein Liebling ist immer noch der Absturz von Java-Programmen mit einer "Null pointer exception", wo es doch in Java gar keine Pointer gibt…
Leute ?! ;) Er will es LERNEN. !!!!!!!!!!!!!!!!! Da reicht das Visual-Studio von MS völlig für aus. Es gibt 3 Dinge die man beim Programmieren können muss. 2 davon kann man lernen. Dies sind : 1.) Die Programmiersprache 2.) Den Umgang mit einen Entwicklungssystem Was man NIE lernen kann, sondern was GUTEN Programmierern in die Wiege gelegt wurde, ist sich das Programm vorzustellen BEVOR man es schreibt. Da das die wenigsten Leute wirklich können, gibt es Ablaufdiagramme. Aber im Prinzip ist Programmieren wie Schachspielen. Man muss mindestens 10 Züge im Voraus denken. Wenn man das kann, dann ist das Programmieren selbst nur noch ein bisschen Fleißarbeit. Und da der jennige halt lernen will, reich das VS völlig aus. Es besteht nämlich eine sehr große Wahrscheinlichkeit das er es in die Tonne wirft. Ich kann so ca. 10 Programmiersprachen, davon einige Total veraltert wie z.b. COBOL o. DBASE (Clipper). So wie moderne. VB, Basic + C für Arduino (Basic ist mir lieber, weil weniger Klammern ;) etc. Diverse Script-Sprachen etc. Das einarbeiten in eine neue Programmiersprache hat mich fürs Grobe 1 Tag gekostet. Die Feinheiten lernt man eh erst mit jahrelanger Praxis. Und auch erst dann wenn man eine Lösung für ein Problem programmieren muss, was man so noch nicht gemacht hat. Und wo man auch keine selbst geschrieben DLL hat für. Und es gibt NIX was ich nur mal so nebenbei mit einen modernen Basic nicht gelöst bekommt. Aber JEDER fängt mal klein an. Und dazu muss man nicht mit so Supersprachen anfangen. Die erschlagen nämlich die meisten Leute. Wenn man es kann, kann man es. Gruß Pucki
Stefan ⛄ F. schrieb: > Aber eigentlich benutzt man für solche Kontrollen lint bzw Spotbugs. Workarounds. Besser ist es, das alles nicht zu brauchen. Stefan ⛄ F. schrieb: > Weil: Das ist für mich ein vollkommen > unwichtiges Pillepalle Detail. Dann hast du noch nie über entsprechende Probleme geflucht. Ja, ich kann die lösen, aber Anfänger eher nicht. Nicht jeder ist so ein Genie dass er all die Probleme schon intuitiv löst und umgeht. Erfahrene Programmierer haben das so verinnerlicht, dass sie gar nicht merken was man alles falsch machen kann. Aber wenn das alles Pillepalle für dich ist, löse doch mal fix dieses Problem: https://ideone.com/OFa4m8 In Java kann so etwas prinzipbedingt nicht passieren. Jede Minute, die man mit dem Lösen davon verbringt, ist verschwendet. Und ja, die Lösung ist an sich simpel. Stefan ⛄ F. schrieb: > Ich beschäftige mich eher mit der Implementierung von Geschäftsprozessen > und Algorithmen, da spielt die Programmiersprache eine untergeordnete > Rolle. Dann solltest du ja kein Problem mit Python oder Java haben und nicht auf C bestehen. Stefan ⛄ F. schrieb: > Und glaube mir, ich kenne viele. Ich auch. Rolf M. schrieb: > Mein Liebling ist immer noch der Absturz von Java-Programmen mit einer > "Null pointer exception", wo es doch in Java gar keine Pointer gibt… Ja, der Klassenname ist blöd gewählt. Aber lieber eine Exception als kuriose Speicherfehler. z.B. in dem auf Java basierenden Kotlin versucht man das Problem über Nullability zu reduzieren.
Für Windows ist dieser Compiler mit IDE ganz nett gemacht. Auch ist Größe des Paktes zur Installation sehr kompakt. Die Hilfefunktion und die man pages sind gut gelöst und für Anfänger gut geeignet. https://lcc-win32.services.net/
Rolf M. schrieb: > Mein Liebling ist immer noch der Absturz von Java-Programmen mit einer > "Null pointer exception", wo es doch in Java gar keine Pointer gibt… Ja ist ein schöner running gag. Aber die Hölle friert zu: In der neuesten Java Version hat die Exception endlich einen Text, der die Betroffene Variable benennt. Leider muss ich mich auf der Arbeit auf LTS Versionen beschränken, das wird daher noch viele Jahren dauern.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.