Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi aus char in bestimmen index eines string kopieren (https://www.delphipraxis.net/111112-aus-char-bestimmen-index-eines-string-kopieren.html)

dj-f 29. Mär 2008 19:15


aus char in bestimmen index eines string kopieren
 
tach,

ich hab bis montag früh ein problem zu lösen:

ich will aus einem array of char ein durch variable indizes bestimmtes zeichen in ein string an eine bestimmte stelle einfügen und der compiler spricht immer eine warnung aus. er combiliert es zwar, aber wenn die entsprechende procedur dran ist streikt er. genauer geht es um polyalphabetische verschlüsselung mit wechselnden matrizen.

Delphi-Quellcode:
type TMatrix= array[1..10,1..26,1..26]of char;

var f, k, n,i,j:integer; //n ist die nummer der verwendeten Marix und vorher deffiniert.
    txt1,txt2, pass:string; //txt1 ist original, txt2 verschüsselt
    X:TMatrix; //wird voher mit kleinen buchstaben gefüllt wie 10 sudokus.(so, dass in einer spalte kein buchstabe doppelt vonkommt usw.)


... begin
      if (ord(txt1[f])>96) and (ord(txt1[f])<123)then
      begin
        i:=0;
        j:=0;
        repeat j:=j+1 until
         X[n,j,1]=txt1[f];
        repeat i:=i+1 until
         X[n,1,i]=pass[k];
        txt2[f]:=X[n,j,i]; //geht nicht
      end
      else
        txt2[f]:=txt1[f]; //geht auch nicht!!
     end...
thx schonmal im voraus...

Sharky 29. Mär 2008 19:17

Re: DRINGEND: aus char in bestimmen index eines string kopie
 
Hai dj-f,

ich glaube Dir das es für Dich dringend ist ... aber im Titel eines Threads muss das nicht erwähnt werden!

Bitte ändere den Titel deines Threads in dem Du bei deinem obersten Posting auf den "Edit-Button" klickst.

Danke und Herzlich-Willkommen in der Delphi-PRAXiS.

Klaus01 29. Mär 2008 19:19

Re: DRINGEND: aus char in bestimmen index eines string kopie
 
Guten Abend,

in Deinem Code wird nicht ersichtlich wie f gesetzt ist/wird.

Grüße
Klaus

dj-f 29. Mär 2008 19:23

Re:re
 
ach ja...einfach in ner zählschleife.sozusagen für jeden einzelnen buchstaben.

Klaus01 29. Mär 2008 19:26

Re:re
 
Zitat:

Zitat von dj-f
ach ja...einfach in ner zählschleife.sozusagen für jeden einzelnen buchstaben.

ja, dannn sage, zeige doch einmal von wo nach wo diese Zählschleife läuft?
Was für eine Fehlermeldung bekommst Du denn wenn Du den Code ausführst?
Geht nicht, ist nicht sehr detailiert.

Grüße
Klaus

dj-f 29. Mär 2008 19:35

Re: aus char in bestimmen index eines string kopieren
 
die fehlermeldung ist:"[Warning]: Unsafe code 'String index to var param'"

und die schleife um alles herum hier ,wenn du alles haben willst:
Delphi-Quellcode:
   for f:=1 to length(txt1)
     begin
     k:=k+1;
     if k>length(pass)then
      begin
        k:=1;
        n:=n+1;
        if n>10
        then n:=1;
      end;
      if (ord(txt1[f])>96) and (ord(txt1[f])<123)then
      begin
        i:=0;
        j:=0;
        repeat j:=j+1 until
         X[n,j,1]=txt1[f];
        repeat i:=i+1 until
         X[n,1,i]=pass[k];
        txt2[f]:=X[n,j,i]; //geht nicht
      end
      else
        txt2[f]:=txt1[f]; //geht auch nicht!!
     end...

Klaus01 29. Mär 2008 20:09

Re: aus char in bestimmen index eines string kopieren
 
.. aber trotz der Warnung sollte der Code doch funktionieren.

Abschalten kannst Du die Warnung so:
Delphi-Quellcode:
{$WARN UNSAFE_TYPE OFF}
{$WARN UNSAFE_CODE OFF}
{$WARN UNSAFE_CAST OFF}
Hier und hier findest Du dazu einige Statements.

Grüße
Klaus

dj-f 29. Mär 2008 20:30

Re: aus char in bestimmen index eines string kopieren
 
Liste der Anhänge anzeigen (Anzahl: 1)
...die warnung ist jetzt weck aber nach wie vor: der code wird combiliert aber wen dann die prozedur aufgerufen wird kommt folgende fehlermeldung und die beiden zeilen werden vom copiler markiert...
ich versuch da jetzt schon ne halbe woche dran...

gruß
martin

mkinzler 29. Mär 2008 20:32

Re: aus char in bestimmen index eines string kopieren
 
Du scheinst auf ein nicht initialisiertes Objekt zuzugreifen.

dj-f 29. Mär 2008 20:48

Re: aus char in bestimmen index eines string kopieren
 
in der repeat-until-bedingung kann ich die beiden ja auch miteinander vergleichen und die indices sind ja mit den gleichen variablen besetzt. *?*


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:24 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz