-
Nein, so meine ich das nicht.
"MyAPI DS" beschreinb ja die Struktur des API's. Meistens gibt es dann einen Verweis auf die Einträge, z.B.:
D MyAPI DS
:
:
D NumEntry 10I 0
D RelPosEntry 10I 0 <= Je nach API
D FirstEntry
D :
D :
D MyPtr S *
D MyEntry DS based(MyPtr)
D* Beschreibung des enzelnen Eintrages
D Ind S 5I 0
for Ind=1 to NumEntry;
MyPtr = %addr(FirstEntry) + (Ind-1) * %size(MyEntry);
endfor;
Der Vor- bzw. Nachteil ist, dass durch Pointerarithmetik auch auf Speicher zugegriffen werden kann, der im Programm nicht definiert ist.
Daher ist dies mit Vorsicht zu geniessen, man muss sich im Klaren sein, worauf man zugreift.
Anderes Beispiel:
D MyParam DS
D Filler 1A
D MyPtr S *
D MyWork DS based(MyPtr)
D Field 10A
C *entry plist
C parm MyParam
C eval MyPtr=%addr(MyParam)
Durch die Definition der Struktur MyWork kann ich somit auch auf nicht definierte Bereiche zugrefen. Dies ist genaus, wie das zu lange definieren von Parametern, die so gar nicht übergeben werden.
Der Compiler und die Runtime bieten da überhaupt keinen Schutz.
Similar Threads
-
By kuempi von stein in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 28-11-06, 05:48
-
By Weki in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 23-10-06, 11:40
-
By asb_salem in forum NEWSboard Programmierung
Antworten: 8
Letzter Beitrag: 21-03-06, 13:32
-
By GEGE in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 24-02-05, 07:45
-
By chr in forum IBM i Hauptforum
Antworten: 6
Letzter Beitrag: 12-02-01, 15:55
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks