Konvertieren einer 32-Bit-Anwendung in eine 64-Bit-Anwendung in C

Lesezeit: 1 Minute

Benutzer-Avatar
Karl Beaudoin

Ich arbeite derzeit daran, eine 32-Bit-Anwendung in eine 64-Bit-Anwendung in C zu konvertieren. Diese Anwendung arbeitet derzeit an der x86-Architektur (Windows, OSX, Unix, Linux). Bevor ich also mit dem Programmieren beginne, wollte ich wissen, was ich beim Konvertieren der Anwendung beachten muss.

  • Ich bin mir nicht sicher, was du meinst. Haben Sie die Quelle der Anwendung, die Sie portieren möchten? Schlagen Sie vor, eine ix86-Binärdatei in eine x86_64-Binärdatei zu übersetzen?

    – dmckee — Ex-Moderator-Kätzchen

    4. Januar 2009 um 22:31 Uhr

  • Da er C angegeben hat, kann ich davon ausgehen, dass er den C-Code für die App hat. 🙂

    – jalf

    4. Januar 2009 um 22:37 Uhr

  • Ja, ich habe die Quelle der Anwendung, aber ich denke, dass der Autor sie nicht auf 64 Bit ändern wollte.

    – Charles Beaudoin

    4. Januar 2009 um 22:45 Uhr

  • Verwenden Sie uintptr_t anstelle von intptr_t. Sie brauchen keine Schilder an Adressen.

    – Jonathan Leffler

    5. Januar 2009 um 2:32 Uhr

  • Die meisten Leute führen keine Manipulationen an den gecasteten Werten durch; Sie werden normalerweise nur verwendet, um einen Wert in einen Callback zu kopieren, also ist intptr_t in Ordnung. Obwohl ich zustimme, wenn der Unterschied für den Code von Bedeutung wäre, wäre dies ein interessanter Punkt.

    – geocar

    6. Januar 2009 um 12:52 Uhr

  • Eigentlich, long ist generell das Problem, da unter Windows long bleibt bei 32 Bit, aber unter Unix long geht von 32 Bit auf 64 Bit.

    – Quantenmechanik

    8. Juni 2012 um 1:17 Uhr

1312310cookie-checkKonvertieren einer 32-Bit-Anwendung in eine 64-Bit-Anwendung in C

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy