in der Schule lernen wir gerade Delphi (Borland Delphi 5.0 (build 5.6.2)), da ich ausschließlich Linux benutze verwende ich Lazarus 0.9.29
wir sollen an einem einfachen Beispiel demonstrieren, dass wir die Grundlagen von Stringverarbeitung verstanden haben - theoretisch müsste es funktionieren, bis auf ein paar Stellen:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46:
| ...
procedure TForm1.cmdInsClick(Sender: TObject); var str,strIns: String; var s: Integer; begin str:=txtWortein.Text; strIns:=txtInsert.Text; If ((str<>'') And (strIns<>''))Then begin s:=StrToInt(txtStelle.Text); If (0<s) And (s<(length(str)+1)) Then ShowMessage('Der neue Text: '+Insert(strIns,str,length(str))) Else ShowMessage('Fehlerhafte Stelle!') end Else ShowMessage('Keine Eingabe oder kein einzufügender Text!'); end;
... procedure TForm1.cmdDelClick(Sender: TObject); var str: String; var s,l: Integer; begin str:=txtWortein.Text; If (str<>'')Then begin s:=StrToInt(txtStelle.Text); If (0<s) And (s<(length(str)+1)) Then begin l:=StrToInt(txtAnzahl.Text); If (0<l) And (l<length(str)+1-s) Then ShowMessage('Der neue Text: '+Delete(str,s,l+s)) Else ShowMessage('Fehlerhafte Länge!') end Else ShowMessage('Fehlerhafte Stelle!') end Else ShowMessage('Keine Eingabe!'); end;
... |
Die Fehlermeldung (Zeilen angepasst):
Delphi-Quelltext
1: 2: 3:
| unit1.pas(13,45) Error: Incompatible types: got "untyped" expected "AnsiString" unit1.pas(35,51) Error: Incompatible types: got "untyped" expected "AnsiString" unit1.pas(277) Fatal: There were 2 errors compiling module, stopping |