Autor Beitrag
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Do 17.07.08 21:32 
Sorry, bei dem PChar absolut S war ein ^ zu viel ... Ohne sollte es gehen ...

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
walter_b Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 135

Windows Vista/XP
Delphi 6
BeitragVerfasst: Do 17.07.08 22:37 
---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

user profile iconBenBE hat folgendes geschrieben:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
var
    S: String;
    PS: PChar absolute S; //Nur tun, wenn man weiß, was man tut!
    L : Integer;
begin
    L := {...} //Berechnen
    SetLength(S, L);
    //Daten in den String füllen
    Inc(PS, L - 14); //PS zum Befüllen nutzen; am Ende sollte er 14 Zeichen vor dem Stringende stehen...

    FillChar(PS^, '0', 14); //14 Nullen anhängen
    Inc(PS, 14);

    //S enthält nun den vollständigen String ...
end;



Wie genau stellst du dir das füllen des Strings vor? Mit S:=Wort; löscht es bei mir die Variabel Wort.
Und L ist die schlussendliche Länge des ganzen Strings, also nach einfüllen der 0en und allem, oder?

Hier nochmal mein Skript, habe noch bisschen rumgespielt, aber geht irgendwie nicht.


So gibt es eine Invalid Pointer Operation. Wird wortchen:=S auskommentiert, "funktioniert" es zwar, jedoch wird die Variabel Wort manipuliert, stimmt also nicht mehr. Wahrscheinlich aufgrund von Pointer!?



Edit: Danke an Narses, wollte das erste Posting eigentlich löschen, aber ging nicht ;)


Zuletzt bearbeitet von walter_b am Do 17.07.08 23:58, insgesamt 1-mal bearbeitet