Autor Beitrag
Papperlapapp
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mo 01.12.08 12:51 
guten morgen,

wenn ich ein Array habe zB.

x : array[0..7]

dann habe ich 8 Werte insgesamt. Ich nehme dann einfach mal an das wenn ich

x : array[-3..4]

ich hauch 8 Werte habe und es das Element x[0] natürlich auch gibt?
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: Mo 01.12.08 12:53 
Warum probierst du es nicht einfach aus? :zwinker:
Tipp: Length() gibt dir u.a. die Gesamtlänge eines Arrays an.

Grüße,
Marc
Papperlapapp Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mo 01.12.08 13:03 
weil ich hier nur den code habe und keinen compiler und ich den code in C portieren möchte.
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: Mo 01.12.08 13:07 
user profile iconPapperlapapp hat folgendes geschrieben Zum zitierten Posting springen:
weil ich hier nur den code habe und keinen compiler und ich den code in C portieren möchte.

Wenn das so ist, ja das Array von -3 bis 4 hat 8 Elemente. Das Element ar[0] existiert.
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: Mo 01.12.08 13:26 
Wenn Du den Code nach C portieren willst:
ausblenden C#-Quelltext
1:
2:
T a[8];
arr = a - (-3);

Dann ist das Ansprechen unter C mit a[-3] genauso möglich wie unter Delphi.

_________________
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.
Papperlapapp Threadstarter
Hält's aus hier
Beiträge: 13



BeitragVerfasst: Mo 01.12.08 13:42 
user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
Wenn Du den Code nach C portieren willst:
ausblenden C#-Quelltext
1:
2:
T a[8];
arr = a - (-3);

Dann ist das Ansprechen unter C mit a[-3] genauso möglich wie unter Delphi.


ähm, das klingt verlockend wenn ich die weiteren Zugriffe auf das Array dann nicht auch anpassen müsste, allerdings reichen meine C Kenntnisse wohl nicht aus um Deine beiden Zeilen zu verstehen...
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: Mo 01.12.08 14:46 
T ist nur ein Kennzeichen für generischen Typ, d.h. dass diese beiden Zeilen für beliebige Datentypen funktionieren ...

Die zweite Zeile führt nur eine Pointer-Addition aus, und verschiebt damit die Offsets im Array.

Siehe C-Hasser in 10 Tagen für mehr Details.

_________________
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.