C und C++



  • Michael991 schrieb:

    c++ ist ja auch u.a Objektorientiert (GUI erstellen) ist das auch C?

    objektorientiertheit hat erstmal absolut nüsse mit "GUI erstellen" zu tun^^
    und auch in C kannst du "objektorientiert programmieren" (aber kannst du im prinzip auch in asm). C++ stellt dir dafür aber (im gegensatz zu C) entsprechende mittel zur verfügung.

    btw windows ist wohl größtenteils in C geschrieben. soviel also zum thema GUI erstellen...



  • Ich bin dabei C ausgiebig zu lernen, will aber vllt auf c++ umsteigen, deswegen die Fragen



  • naja, wenn du schon C lernst, dann lern erstmal C und dann lern C++ oder Java oder C# (oder am besten gleich alle ;))



  • Naja wenn C++ besser ist könnte ich ja auf C++ umsteigen, ist ja kein Ding.

    Und was will ich mit C# und Java? 😉



  • rüdiger schrieb:

    btw. GCC 4.2 hat glaube ich C99 VLAs

    Ja, der 3.4 hatte die auch schon, aber hab irgendwo gelesen, die wären nicht Standardkonform. Habs selber noch nicht getestet.



  • Michael991 schrieb:

    Naja wenn C++ besser ist könnte ich ja auf C++ umsteigen, ist ja kein Ding.

    Und was will ich mit C# und Java? 😉

    Naja... Was heißt besser? C++ bietet die mehr Sprachfeatures, erfordert aber auch ein komplexeres denken, wenn man diese Sinnvoll einsetzten will.



  • ProgChild schrieb:

    rüdiger schrieb:

    btw. GCC 4.2 hat glaube ich C99 VLAs

    Ja, der 3.4 hatte die auch schon, aber hab irgendwo gelesen, die wären nicht Standardkonform. Habs selber noch nicht getestet.

    VLAs hat der GCC schon seit Ewigkeiten. Aber ich glaube in der Release-Liste vom 4.2er steht dass die VLAs nun C99 konform sind oder waren das die inlines. Hmm, bin mir nicht mehr sicher.



  • ProgChild schrieb:

    Michael991 schrieb:

    Naja wenn C++ besser ist könnte ich ja auf C++ umsteigen, ist ja kein Ding.

    Und was will ich mit C# und Java? 😉

    Naja... Was heißt besser? C++ bietet die mehr Sprachfeatures, erfordert aber auch ein komplexeres denken, wenn man diese Sinnvoll einsetzten will.

    kann man eigentlich auch C + C++ zusammen einsetzen, also mit beiden Sprachen ein Programm entwickeln?



  • ja



  • Michael991 schrieb:

    kann man eigentlich auch C + C++ zusammen einsetzen, also mit beiden Sprachen ein Programm entwickeln?

    Ja kann man. Du kannst mit dem C++-Schlüsselwort extern "C" C-Funktionen in C++ aufrufen und C++ funktionen für C verfügbar machen. Schöner ist es aber, C++ zu verwenden, meiner Meinung nach. Ich muss im Studium im moment alles mit C machen und hätte doch schon mal gerne C++ 😃



  • Wenn man beides beherscht sind eine also "keine Grenzen" mehr Gesetzt ein Programm zu entwickeln, man hat alles was man brauch?!



  • sagen wir mal ja.
    wenn du C++ lernst, dann lernst du C im prinzip implizit mit 😉
    wenn du C schon kannst, dann kannst du einen (kleinen) teil von C++.
    so einfach ist das.



  • C eignet sich besser für hardwarenahe Programmierung für Microcontroller etc.
    weil C-Programme mit weniger Speicherplatz auskommen.
    Mit C++ ist das meist noch nicht möglich, soviel ich weiss.

    Mit C++ kannst du Programme, bzw. Funktionen schreiben und in sogenannten Klassen abspeichern.
    Diese können ihren Programmcode an andere Klassen "weitervererben".
    Eine Klasse kann also Quellcode von einer oder sogar mehreren Klassen erben, das kann C nicht. ( Die Frage ist, ob man solche Spielereien braucht ).
    Wie auch immer ist dies ein sehr interessanter Aspekt wie ich finde.
    Mich hat das mal sehr interessiert, habe C++ gepaukt wie blöde und trotztem komme ich heute mit C völlig aus.

    Mit C++ hast du eine einfachere Speicherverwaltung, die weniger Fehleranfällig ist. ( Konstruktoren, Destruktoren, Smartpointer ).
    Dann gibts da noch Templates, die STL und ach..blah und blubb...

    Bei größeren Programmen kann man bei C schon mal an die Grenze einer Krise kommen, wenn vor lauter Zeigern der Bildschirm langsam vor den Augen verschwimmt. 😃

    Ansonsten, einfach mal beides ausprobieren und dann weiter schauen.

    dot schrieb:

    naja, wenn du schon C lernst, dann lern erstmal C und dann lern C++ oder Java oder C# (oder am besten gleich alle ;))

    Machst du das so ?



  • dot schrieb:

    sagen wir mal ja.
    wenn du C++ lernst, dann lernst du C im prinzip implizit mit 😉
    wenn du C schon kannst, dann kannst du einen (kleinen) teil von C++.
    so einfach ist das.

    Also wäre es gut wenn ich C erst ein mal ausgiebiger lerne und DANN C++?



  • proggingmania schrieb:

    C eignet sich besser für hardwarenahe Programmierung für Microcontroller etc.
    weil C-Programme mit weniger Speicherplatz auskommen.
    Mit C++ ist das meist noch nicht möglich, soviel ich weiss.

    Das halte ich für ein Gerücht, vor allem da C nährungsweise eine Untermenge von C++ ist...

    Mit C++ kannst du Programme, bzw. Funktionen schreiben und in sogenannten Klassen abspeichern.
    Diese können ihren Programmcode an andere Klassen "weitervererben".
    Eine Klasse kann also Quellcode von einer oder sogar mehreren Klassen erben, das kann C nicht. ( Die Frage ist, ob man solche Spielereien braucht ).

    Klar kannst du so was auch in C machen. Schau dir Objective C an. Der Code der generiert wird ist reines C!

    Bei größeren Programmen kann man bei C schon mal an die Grenze einer Krise kommen, wenn vor lauter Zeigern der Bildschirm langsam vor den Augen verschwimmt. 😃

    das liegt wohl eher an deinem Programmierstil :p



  • proggingmania schrieb:

    Die Frage ist, ob man solche Spielereien braucht

    fernsehen und radio braucht man auch nicht :p

    Michael991 schrieb:

    Also wäre es gut wenn ich C erst ein mal ausgiebiger lerne und DANN C++?

    was ich damit sagen wollte ist:

    es is total egal. lern programmieren 😉

    wenn du C++ lernst, dann hast du mit C keine probleme, wenn du C lernst kannst du immer noch C++ lernen, wenn du programmierern kannst, dann kannst du sowieso jede sprache recht schnell lernen.



  • dot schrieb:

    btw windows ist wohl größtenteils in C geschrieben. soviel also zum thema GUI erstellen...

    Nicht nur Windows, die meisten Betriebssysteme sind in ihrem Kern, bzw. zum größten Teil in C programmiert.



  • was ich damit sagen wollte ist:

    es is total egal. lern programmieren

    muss mich ja auf etwas spezialisieren 😛



  • Michael991 schrieb:

    muss mich ja auf etwas spezialisieren 😛

    warum?



  • proggingmania schrieb:

    dot schrieb:

    btw windows ist wohl größtenteils in C geschrieben. soviel also zum thema GUI erstellen...

    Nicht nur Windows, die meisten Betriebssysteme sind in ihrem Kern, bzw. zum größten Teil in C programmiert.

    Weil C besser für Betriebssysteme geeignet ist? Wird dafür etwa kein Asm verwendet?


Anmelden zum Antworten