C nach Pascal

Diskutiere C nach Pascal im Programmieren allgemein Forum im Bereich Programmieren unter Linux/Unix; Kennt einer von euch das Linuxprogramm p2c, dieses Programm übersetzt den Pascal Quellcode in einen C Quellcode. Ich weiss nicht ob es schon ein...

  1. JokWor

    JokWor Gast

    Kennt einer von euch das Linuxprogramm p2c, dieses Programm übersetzt den Pascal Quellcode in einen C Quellcode.
    Ich weiss nicht ob es schon ein Programm gibt, das C in Pascal übersetzt. Deswegen wollte ich versuchen ein eigenes Tools dafür zu schreiben.
    Wer mit machen will kann sich per E-Mail unter
    JokWor@t-online.de bei mir melden.
    Oder kennt ihr schon so ein Programm?

    Ich glaube das wird schwer, aber ich hab keine Lust C oder C++ zu lernen und so könnten die Pascal und Delphi Programmierer
    die Linux Quellcodes leichter verstehen
     
  2. Anzeige

    Anzeige

    Wenn du mehr über Linux erfahren möchtest, dann solltest du dir mal folgende Shellkommandos anschauen.


    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. etuli

    etuli Betrunken

    Dabei seit:
    12.04.2003
    Beiträge:
    278
    Zustimmungen:
    0
    Viel Spass beim schreiben des Programms. ;o)
     
  4. #3 Anakin77, 11.05.2004
    Zuletzt bearbeitet: 11.05.2004
    Anakin77

    Anakin77 Mitglied

    Dabei seit:
    07.01.2004
    Beiträge:
    28
    Zustimmungen:
    0
    Diese Idee stammt wohl von einem nicht-C-Programmierer.

    Ich kann sowohl Pascal als auch C(++) und sage daher mal, dass es fast unmöglich ist, den Quellcode automatisch umzustellen.

    C bietet einfach zu viele Möglichkeiten eine gleiche Anweisung zu schreiben. Gerade im Bereich der Pointerarithmetik ist C weit flexibler als Pascal (was nicht unbedingt besser ist, aber auf jeden Fall problematisch).

    Und wenn ich an die Konvertierung der folgenden Zeilen denke, dann möchte ich mal ein Konverterprogramm sehen, dessen Output a) korrekt und b) lesbar ist (wegen der Grundidee Kernelsourcen lesbarer zu machen):

    while (*(a) = *(b[i++]));

    a und b sind hier Zeiger auf ein Speicherbereich. Eventuell fehlt noch ein Typecast (char *).

    Diese Zeile kopiert ganze Speicherblöcke solange bis in den Quelldaten eine 0 steht (=> Ende der Whileschleife, welche nur das Zuweisungsergebnis prüft, da ein einfaches '=' in C eben kein Vergleichsoperator ist wie bei Pascal, sondern eine einfache Zuweisung).

    @Pascal und Delphiprogrammierer:

    Lernt C. Wer an Kernelsourcen basteln möchte kommt daran nicht vorbei. Gerade im Bereich Betriebssystembau ist alles Anschauungsmaterial in C vorhanden!
     
Thema:

C nach Pascal

Die Seite wird geladen...

C nach Pascal - Ähnliche Themen

  1. Artikel: Pro-Linux nach dem Mai 2020

    Artikel: Pro-Linux nach dem Mai 2020: Wie wir bereits angekündigt haben, werden wir Ende Mai das Schreiben von Nachrichten einstellen. Pro-Linux wird in der Folge weiter zugänglich...
  2. TrueNAS soll nach Debian 11 portiert werden

    TrueNAS soll nach Debian 11 portiert werden: Die Firma iXsystems plant die Portierung ihrer zusammengeführten BSD-Distribution TrueNAS auf verschiedene andere Plattformen. Zunächst ist dabei...
  3. Artikel: Die 21. LinuxBierWanderung kommt nach Kronberg!

    Artikel: Die 21. LinuxBierWanderung kommt nach Kronberg!: Dieser Artikel kündigt die 21. LinuxBierWanderung an, die vom 30. August bis 5. September 2020 in Kronberg stattfindet. Zugleich beantwortet er...
  4. Nach Upgrade von SLES 11 SP3 zu SLES 12 SP4 kein Zugriff von Windows mehr

    Nach Upgrade von SLES 11 SP3 zu SLES 12 SP4 kein Zugriff von Windows mehr: Ich habe hier einen Linux-Server, der Cifs-Mounts eines Windows-2008-Servers (nicht R2) über Samba weiterreicht. Der Windows-Server spricht (noch)...
  5. Support für Ubuntu 19.04 endet nächste Woche

    Support für Ubuntu 19.04 endet nächste Woche: Nutzer von Ubuntu 19.04 sollten spätestens in zwei Wochen über eine Migration ihrer Systeme nachdenken. Wie das Ubuntu-Projekt bekannt gab, endet...
  1. Diese Seite verwendet Cookies um Inhalte zu personalisieren. Außerdem werden auch Cookies von Diensten Dritter gesetzt. Mit dem weiteren Aufenthalt akzeptierst du diesen Einsatz von Cookies.
    Information ausblenden