Allgemeine Fragen zur PROFAN Programmierung

Views (Heute): 249238 (10674)

| Suchen
| Zurück zur Übersicht

Autor | Thema: Bug bei Bereichsvariablen ???????
Bernhard Künzel
| Datum:17.01.02 13:01 (b.kuenzel@chello.at) |
Hallo, die Adresse von Variablen wird in die Bereichsvariable nicht eingetragen, das gleiche ist auch bei manchen DLLs wenn man von einer Funktion direkt in die Bereichsvariable übergeben will. Beispiel: Declare Test#,T$,ADR& Dim Test#,10 Clear Test# T$="Test" ADR&=ADDR(T$) Long Test#,0 = ADDR(T$) Print ADR& Print Long(Test#,0) WaitInput Dispose Test# MFG Bernhard
Thorsten
| Datum:17.01.02 20:17 (mrk@mrk-soft.de) |
Hi, Beachte, das die Funktion ADDR vor Version 7.0 ein anderes ergebinss brachte, (also alles vor 6.6), erst ab Version 7.0 ist mit ADDR eine übergabe von String-Adressen möglich. Siehe dazu auch in der Profan-Hilfe. Thorsten
Bernhard Künzel
| Datum:17.01.02 21:01 (b.kuenzel@chello.at) |
Hallo Thorsten, habe Profan 7.0e wie Du bei meinem Beispiel siehst wird die Adresse in der LongInteger Variable richtig eingetragen, nur in der Bereichsvariable wird überhaupt nichts übernommen. Du kannst vor der Adreßübergabe in Long Test#,0=22 eintragen dann steht nach der Adreßübergabe immer noch 22 drinnen. MFG Bernhard
Roland G. Hülsmann
| Datum: 18.01.02 00:32 (rgh-soft@t-online.de) |
Hallo Bernhard, dieses eltsame Phänomen ist schon länger bekannt, aber ich habe trotz aufwändiger Suche nicht herausgefunden, woran es liegen könnte. Das Ermitteln der Speicheradresse klappt ja und das Abspeichern in eine Longint-Variable auch. Also das Auslesen scheint fehlerfrei zu sein. Das Speichern einer Longintvariablen im Bereich klappt ja auch. Also vermutlich auch hier kein Fehler. Und dazwischen gibt es eigentlich nichts. Ich fürche, man wird vorerst noch den Workaround über die Longint-Variable nehmen müssen ... Sorry!

| Zurück zur Übersicht