AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein (Erledigt)[C++] "*cook++"?/des Verschlüsselung/vnc Passwort
Thema durchsuchen
Ansicht
Themen-Optionen

(Erledigt)[C++] "*cook++"?/des Verschlüsselung/vnc Passwort

Ein Thema von chaosben · begonnen am 9. Feb 2006 · letzter Beitrag vom 27. Aug 2008
Antwort Antwort
Seite 2 von 2     12   
tommie-lie
(Gast)

n/a Beiträge
 
#11

Re: (Erledigt)[C++] "*cook++"?/des Verschlüsselung

  Alt 10. Feb 2006, 15:52
Zitat von chaosben:
Danke danke ...
Soll das eine Aufforderung sein, daß wir endlich mit der Fachsimpelei aufhören sollen?

Hm, deine Unit sieht sehr nach einer C-Übersetzung aus.
Beispelsweise schon in der ersten Funktion cpkey():
Delphi-Quellcode:
procedure cpkey(into : PLongWord);
var
  from, endp : PLongWord;
begin
  from:=@KnL;
  endp:=@KnL[31];
  while (Integer(from)<=Integer(endp)) do
  begin
    into^:=from^;
    Inc(into);
    Inc(from);
  end;
end;
Wäre es da nicht sinnvoller, etwas daraus zu schustern, was mehr nach Pascal aussieht und für Pascal-Puristen die Lesbarkeit etwas erhöht? Beispielsweise:
Delphi-Quellcode:
procedure cpkey(var into: array of LongWord);
// oder passender selbstdefinierter Array-Typ, ich habe
// mir die Unit nicht so genau angesehen um zu wissen,
// ob ein Array mit statischer Länger hier sinnvoller
// wäre als ein Open Array
var
  i: Integer;
begin
  for i := 0 to 31 do
    into[i] := KnL[i];
end;
Iss kürzer, spart Variablen auf'm Stack und liest sich einfach besser, wenn man C-Code nicht gewöhnt ist.
Wenn in C Pointer übergeben werden, in die die Funktion Werte schreibt, kann man das sehr oft mit einem einfachen var-Parameter nach Pascal übersetzen. Dadurch verwirrt man Leser nicht mit unnötiger Pointerarithmetik.
Ich habe mir die restlichen Funktionen nicht genauer angeschaut, aber auf den ersten Blick würde ich sagen, daß man viele Dinge auf ähnliche Art und Weise mehr pascalisifizieren könnte.
Außerdem ist mir bei deinen Arrays aufgefallen, daß das Array ByteBit aus Words besteht, obwohl die Werte nur Byte-Länge haben. Hat das einen Grund?
  Mit Zitat antworten Zitat
Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#12

Re: (Erledigt)[C++] "*cook++"?/des Verschlüsselung

  Alt 13. Feb 2006, 06:29
Na Holla die WaldFee ... da passt aber einer auf. Danke für die Tips.

Was die Pascalifizierung angeht: Ich hab mich bemüht eng an der Struktur der C-Datei zu bleiben, damit das Debuggen leichter fällt und eventuelle Änderungen leichter übernommen werden können. Ersteres hat sich schon bezahlt gemacht, denn wir mussten die Unit an 2 Rechnern debuggen. Der ein hatte die C-Datei geladen, der andere die Pascal-Unit. Daurch die gleiche Struktur konnten wir Zeile für Zeile durchgehen und den Fehler finden.

Was das Array angeht: Ja, an sich hast du Recht. Nur: wenn ich anfangen die Unit zu "tunen" kann sie ein anderer vielleicht nicht mehr so leicht verstehen, wenn er den C-Code daneben liegen hat... naja ... es läuft auf obiges hinaus. Natürlich kannst du dir die Unit passend und schöner machen und sie als Konkurrenz-Produkt posten.
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#13

Re: (Erledigt)[C++] "*cook++"?/des Verschlüsselung

  Alt 13. Feb 2006, 16:00
Zitat von chaosben:
Ich hab mich bemüht eng an der Struktur der C-Datei zu bleiben, damit das Debuggen leichter fällt und eventuelle Änderungen leichter übernommen werden können.
Das sind zwei Argumente. Ich dachte der C-Code wäre bereits stable, sodaß er sich in absehbarer Zeit nicht mehr ändert. In dem Falle bräuchte man ihn natürlich auch nicht mehr großartig debuggen. Nun stellt sich für euer Vorgehen lediglich die Frage, ob paralleles Maintainen von Quellcode in zwei verschiedenen Sprachen sinnvoll ist, oder ob man sich nicht lieber auf eine Sprache beschränkt, den Krempel in 'ne DLL kompiliert und dann unabhängig jeder (unabhängig von der Sprache) die Funktionen daraus aufrufen und benutzen kann.
Ich kenne Übersetzungen halt nur als Mittel, um etwas für Leser beider Weltanschau^WSprachen zugänglich zu machen, nicht um zweimal möglichst identischen Quellcode zu maintainen

Zitat von chaosben:
Natürlich kannst du dir die Unit passend und schöner machen und sie als Konkurrenz-Produkt posten.
Hihi, ne, so viel Langeweile habe ich dann auch wieder nicht
  Mit Zitat antworten Zitat
Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#14

Re: (Erledigt)[C++] "*cook++"?/des Verschlüsselung

  Alt 27. Aug 2008, 06:35
Hier noch mal eine gefixte Version.
Angehängte Dateien
Dateityp: pas d3des_131.pas (15,5 KB, 32x aufgerufen)
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz