Welche Library?



  • hat sich einfach so ergeben, das ich dazu n gutes buch gefunden habe, zudem hats ja auch sene daseinsberechtigung/viele sachen sind in C geschrieben - und jetzt hab ichs eh schon angefangen ):
    gtk als dll oder nicht ist angesichts dessen das dieses ja glücklicherweise eh für C ist unrelevant, wie schaut es denn mit den anderen aus? die sind dann wohl alle keine dlls?



  • srynoname schrieb:

    gtk als dll oder nicht ist angesichts dessen das dieses ja glücklicherweise eh für C ist unrelevant, wie schaut es denn mit den anderen aus? die sind dann wohl alle keine dlls?

    Das kommt drauf an. wxWidgets lässt sich als statische Library oder als dynamische übersetzten, zum Beispiel.

    Es gibt noch eine alternative bzgl. C Programmierung, von der ich aber abrate, da die nicht gerade elegant und stabil ist. Du kannst mit der Windows API programmieren und unter Linux die Winelib linken. Die Programme sehen unter Windows dann "nativ" aus, aber unter Linux wie Windowsprogramme...



  • @srynoname
    Du musst bedenken, dass C am Ende nur ein "Assembler Deluxe" und daher sehr maschinennah ist. Klar, man kann damit Plattformunabhängig programmieren, aber die Möglichkeiten dazu sind nicht gerade extrem günstig. C ist und bleibt Low Level. Das ist gut, denn dafür wurde es entworfen, da hat es seine Stärken, aber das impliziert auch dass man es vllt. doch durch C++ oder eine andere Hochsprache ersetzen sollte, wenn man Desktop-Applikationen entwickeln möchte.

    MfG

    GPC



  • @GPC: hmm, jetzt habe ich halt schon dummerweise mit C angefangen, und viele sachen die mich interessieren z.b. exploit development, werden weitgehend in C vorgenommen. insofern hoffe ich mal das es nicht ganz umsonst ist, aber vor allem habe ich halt schon mit angefangen und will jetzt mal was produktives machen. auf C++ wollte ich dann so oder so irgendwann umsteigen, so wie ich das zuvor immer gelesen habe, sind die unterschiede net so groß, aber anscheinend stimmt das wohl doch net so ganz.

    @ProgChild:
    das mit der statischen/dynamischen library klingt ganz vielversprechend, ist es das in der praxis auch?
    z.b. habe ich mir mal "Hello world" angeschaut - geschrieben in C++
    http://www.wxwidgets.org/wiki/index.php/Hello_World
    da wäre nun schon das problem, wie ich das in C nutze ):
    wenn ich das in C nutzen will, werde ich wohl mit einigen nachteilen bzw. fehleden infos rechnen müssen? evtl. soltle ich - auch wenns net so ganz das is was ich mir vorstelle - vorerst mal gtk+ nutzen und wxwidgets dann, wenn ich mal auf C++ umsteige?

    edit:
    @GPC: aber bei C++ werde ich doch ähnliche probleme wie bei C haben - sockets, gui etc. dafür gibs keinen standard?

    edit2:
    http://www.parinyasoft.com/download.html
    4. MinGWStudioFullSetupPlus-2.05.exe
    - Precompiled wxWidgets 2.6.0 libraries ,header files and its documentation.
    =>da würde ich mir dann schonmal das kompilieren der wxwidgets sparen, oder?
    stellt sich nur noch die frage, wie ich die unter C nutze?



  • Ich glaube dir ist die ernsthaftigkeit der Lage immer noch nicht bewusst. 😃

    wenn ich das in C nutzen will, werde ich wohl mit einigen nachteilen bzw. fehleden infos rechnen müssen?

    Du wirst wxWidgets nicht von C aus nutzen können, weil es kein C-Interface gibt (mir ist jedenfalls keines bekannt). Du bist bei C auf C-Libs angewiesen!!!

    Der Unterschied zwischen C und C++ ist riesig. Wo hast du denn gelesen, das dem nicht so ist? GPC und ich haben versucht dir klar zu machen, das du mit C die falsche Sprache lernst, für das was du als Ziel hast. Was exploit dev ist weiß ich nicht (hab mal google angeschmissen, es scheint was mit Hacking zu tun zu haben?), aber das was du mit C erledigen kannst, kannst du auch mit C++ erledigen. Wobei ich mich frage, ob man für Hacking eine GUI braucht? Bzw. eine _native_ GUI wichtig ist?

    Also, wenn du C programmieren willst, mußt du dir C++-Libs aus dem Kopf schlagen. Wenn du Desktop-Anwendungen entwickeln willst, dann kann man nur empfehlen, C liegen zu lassen und sich mit C++ zu beschäftigen (auch wenn man C angefangen hat). Dann kannst du dir auch eine der vielen GUI-Libs nach belieben aussuchen. Was du letztendlich machst, ist aber deine Entscheidung. Aber wir wollen dir nur klar machen, was anscheinend bei dir noch nicht angekommen ist. 😉

    aber bei C++ werde ich doch ähnliche probleme wie bei C haben - sockets, gui etc. dafür gibs keinen standard?

    Es sind keine Probleme. Es gibt Libs für C und C++, und man muß sich auf etwas festlegen und gut ist. Die GUI-Libs müssen nicht im ISO-Standard sein, weil es die Situation nicht verbessern würde. Das ISO-Komitee will offiziell keine GUI-Lib aufnehmen.

    Eine Netzwerk-Lib wird dagegen höchstwahrscheinlich im nächsten ISO C++ TR2 aufgenommen, im Herbst 2006 entscheidet das Komitee ob http://asio.sourceforge.net in den TR2 gewählt wird.



  • ich meinte nur, dass ich C evtl. auch später mal gut gebrauchen könnte, d.h. für sachen die typischerweise darin gecodet werden, z..b der linux kernel oder eben exploits, auch wenn man die wohl auch in C++ schreiben kann, zum anschauen und nachvollziehn ist es sicher pratkisch wenn man dann doch C kann 😉
    also das mit der gui hat sich jetzt eh erledigt, habe mir mingw studio und die dazugehörigen sachen für gtk gezogen, und mal n code genommen der n fenster erstellt - sieht windows nativ aus und startet schnell - also eigentlich alles was ich will 🙂
    aber ich werde wohl wirklich auf C++ umsteigen, wobe für mich bisher der grund dafür vor allem diverse libraries sind - und wenn da jetzt sogar ne netzwerk lib evtl. zum stadnard hinzukommt, das is schon was feines 🙂
    aber ich finds als anfänger wirklich schwer, sich klar zu machen wo da denn so die unterscheide sind etc, was ich mit C++ machen kann, kann ich ja eigentlich auch mit C machen? naja ich denke mal, das wird man erst dann richtig verstehen wenn man sich mit beidem mal auseinandergesetzt hat oder eben länger was mit C macht und dadurch evtl. dessen anchteile für die eigenen zwecke kennenlernt.
    (als ich irgendwann mal mit JS, html, php etc. angefangen hat, hats auch ne weile gedauert bis ich das ganz verstanden hab, das php eben nur serverseitig ist etc^^)



  • srynoname schrieb:

    was ich mit C++ machen kann, kann ich ja eigentlich auch mit C machen?

    Das Ergebnis kann sicher das selbe sein. Du kannst für alles auch Assembly nehmen. Stell dich nur darauf ein, dass es in Assembly sehr viel mehr Arbeit ist, als in C++. Also der Weg könnte schwerer in C als in C++ sein, um das gleiche zu tun.



  • srynoname schrieb:

    zum anschauen und nachvollziehn ist es sicher pratkisch wenn man dann doch C kann 😉

    Wenn du C++ kannst sollte es dir überhaupt nicht schwer fallen auch nen C-Code zu verstehen 😉



  • Artchi schrieb:

    aber bei C++ werde ich doch ähnliche probleme wie bei C haben - sockets, gui etc. dafür gibs keinen standard?

    Es sind keine Probleme. Es gibt Libs für C und C++, und man muß sich auf etwas festlegen und gut ist. Die GUI-Libs müssen nicht im ISO-Standard sein, weil es die Situation nicht verbessern würde.

    Darüber kann man geteilter Meinung sein. Das Argument: "Wir haben nicht überall perfekte und gleiche Ergebnisse" ist ein Witz.

    Artchi schrieb:

    Das ISO-Komitee will offiziell keine GUI-Lib aufnehmen.

    Wofür ich ihnen am Liebsten den Standard um die Ohren schlagen würde.

    srynoname schrieb:

    ich meinte nur, dass ich C evtl. auch später mal gut gebrauchen könnte, d.h. für sachen die typischerweise darin gecodet werden, z..b der linux kernel oder eben exploits, auch wenn man die wohl auch in C++ schreiben kann, zum anschauen und nachvollziehn ist es sicher pratkisch wenn man dann doch C kann 😉

    Also im Ernst, du fängst gerade mit Programmieren an und machst dir über nen Kernel Gedanken? Mal davon abgesehen, der braucht nun wirklich _keine_ GUI!

    srynoname schrieb:

    aber ich finds als anfänger wirklich schwer, sich klar zu machen wo da denn so die unterscheide sind etc, was ich mit C++ machen kann, kann ich ja eigentlich auch mit C machen?

    Sicher, am Ende ist eh alles Assembler bzw. Maschinensprache, es kommt nur drauf an, wie weit oben dur vorher warst. Mit C warst du nur ne Etage höher, mit C++ min. 2.

    MfG

    GPC



  • Also im Ernst, du fängst gerade mit Programmieren an und machst dir über nen Kernel Gedanken? Mal davon abgesehen, der braucht nun wirklich _keine_ GUI!

    wollte ja nur argumentieren, das C keine ausgestorbene sprache ist und die gui rbauch ich natürlich nicht für den kernel, jetzt tut mal net so als wüsstet ihr alle net wie das gemeint war 😉

    und im moment scheints für mich mit GTK+,sqlib und wahrscheinlich hawknl erst mal zu reichen 🙂
    (die betonung liegt auf erstmal, vom autor meines C buches gibs demnächst n c++ buch, das werd ich mir dann wohl auch zulegen).



  • srynoname schrieb:

    Also im Ernst, du fängst gerade mit Programmieren an und machst dir über nen Kernel Gedanken? Mal davon abgesehen, der braucht nun wirklich _keine_ GUI!

    wollte ja nur argumentieren, das C keine ausgestorbene sprache ist und die gui rbauch ich natürlich nicht für den kernel, jetzt tut mal net so als wüsstet ihr alle net wie das gemeint war 😉

    hehe, wollte dich trotzdem aufziehen, war so ne schöne Vorlage... aber im Ernst, klar, C ist nicht ausgestorben, findet rege Verwendung (z.B. MikroController oder Betriebssysteme). Nur hat halt jede Sprache ein anderes Einsatzgebiet, dass muss man bedenken.

    MfG

    GPC



  • srynoname schrieb:

    (die betonung liegt auf erstmal, vom autor meines C buches gibs demnächst n c++ buch, das werd ich mir dann wohl auch zulegen).

    Und das wird dann bestimmt eines von diesen "tollen" C++-Büchern die noch eine ordentliche Prise C-Konzepte mit drin haben, weil der Autor sein C nicht aus dem Kopf bekommt.

    Sag nicht, wir hätten dich nicht gewarnt! 😃



  • Artchi schrieb:

    srynoname schrieb:

    (die betonung liegt auf erstmal, vom autor meines C buches gibs demnächst n c++ buch, das werd ich mir dann wohl auch zulegen).

    Und das wird dann bestimmt eines von diesen "tollen" C++-Büchern die noch eine ordentliche Prise C-Konzepte mit drin haben, weil der Autor sein C nicht aus dem Kopf bekommt.

    Sag nicht, wir hätten dich nicht gewarnt! 😃

    👍 👍 👍 🕶

    Avoid the unknown. 😮

    BR
    Vinzenz


Anmelden zum Antworten