Freebasic zu C



  • Hi,
    ich versuche einen Code von Freebasic nach C zu übersetzten bleibe hier hängen:

    const THIS_DATA as UINTEGER = &h00
    

    habe in C das stehen:

    typedef const unsigned int THIS_DATA
    

    Wohin kommt das &h00?

    Danke für die Antworten


  • Mod

    const unsigned int THIS_DATA = 0;
    

    Das kann in speziellen Fällen auch eine etwas andere Bedeutung haben, ich weiß nicht, wie Freebasic genau funktioniert. Je nach Kontext kann daher auch

    #define THIS_DATA 0U
    

    "richtiger" sein. Allgemein ist es keine gute Idee, eine Sprache 1:1 in eine andere zu übersetzen. Nimm die Algorithmen aus dem Basic-Code und setz sie richtig in C um mit C-typischen Sprachmitteln. Das ist zumal umso wichtiger, da du anscheinend nicht wirklich gut C sprichst. Solch eine Art von Übersetzung wird nicht gut gehen.

    P.S.: Da ich gerade mal Freebasic nachgeschlagen habe: Das unterstützt ja sogar nativ Objektorientierung via Klassen. Da kann obiger Code sogar - je nach Kontext - noch andere Bedeutungen haben. Bedeutungen, für die es in C, mangels direkter Unterstützung von Klassen, gar kein direktes Äquivalent gibt. Um die Mechanismen von Klassen in C nach zu bauen, muss man etwas weiter ausholen, als Zeile für Zeile zu übersetzen. So etwas wird auch viel in C gemacht, aber man muss sich schon auskennen dafür.


Anmelden zum Antworten