Autor Beitrag
Luzifer
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 98

WinXP Pro/ Vista
D5 Enterprise/D7 Enterprise/D2005 Architect
BeitragVerfasst: Mi 07.12.05 19:46 
hi leutz

ich hab mal ne blöde(?) frage....

und zwar bekomme ich ja mit

ausblenden Delphi-Quelltext
1:
ord('c')					


relativ einfach nen rückgabewert, in diesem Fall "99".
selbst wenn ich diesen wert nun direkt in ein Array of Integer schreibe funzelt das noch wunderbar

ausblenden Delphi-Quelltext
1:
<span class="inlineSyntax"><span class="codekey">Array</span>[i]:=Ord(<span class="codestring">'c'</span>);</span>					


das prob tritt hier auf:

ausblenden Delphi-Quelltext
1:
<span class="inlineSyntax"><span class="codekey">Array</span>[i]:=Ord(copy(<span class="codekey">String</span>,i+<span class="codenumber">1</span>,<span class="codenumber">1</span>));</span>					


könnte das daran liegen dass es sich beim ersten mal um einen char handelt und beim zweiten mal um einen string?
oder liegt das daran dass aus einem mir unerfindlichen Grund Integer und ordinal nicht kompatibel sind?
die Fehlermeldung von delphi ist nämlich: [Fehler] Unit1.pas(53): Inkompatible Typen
sinnigerweise ohne genauere Angabe.......
F34r0fTh3D4rk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5284
Erhaltene Danke: 27

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: Mi 07.12.05 19:55 
ausblenden Delphi-Quelltext
1:
Ord(String[i+1])					

ein char ist ein byte groß, integer kannst du also nicht direkt umwandeln 8)
du hast aber versucht einen string in einen ordinaltyp umzuwandeln, was aber nicht geht, da dieser bei einer länge von 1, nicht 1 byte groß ist, sondern 2, weil 0 terminiert, bei pchars mag das gehen ;)


Zuletzt bearbeitet von F34r0fTh3D4rk am Mi 07.12.05 19:58, insgesamt 1-mal bearbeitet
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Mi 07.12.05 19:57 
user profile iconLuzifer hat folgendes geschrieben:

könnte das daran liegen dass es sich beim ersten mal um einen char handelt und beim zweiten mal um einen string?


ja.

Versuc mal

ausblenden Delphi-Quelltext
1:
Array[i]:=Ord(String[i]);					

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)
F34r0fTh3D4rk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5284
Erhaltene Danke: 27

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: Mi 07.12.05 19:59 
mit [] greifst du auf das array element zu, strings sind nichts anders als chararrays.
Luzifer Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 98

WinXP Pro/ Vista
D5 Enterprise/D7 Enterprise/D2005 Architect
BeitragVerfasst: Mi 07.12.05 20:09 
danke euch! funzelt jetzt