Italia
Foro

Strano comportamento, Abstürze...

Mein Interpreter stürzt mir dauernd ab / warum nur ??

 
- Page 1 -



RudiB.
Ciao,

habe ein kleines Problem das ich nicht lösen kann, oder nicht verstehe.
Mein Interpreter stürzt mir bei folgendem Quellcode ab / hängt sich auf.....aber warum denn nur. Was mache ich da falsch ??
Hat jemand eine Idee und kann mir helfen ?

Herunterladen

 
XProfan 9
WinXP, SP2, AMD Phenom(tm) II X4 840 Processor

Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
28.12.2015  
 



« Dieser Beitrag wurde als Lösung gekennzeichnet. »


RGH
Ja, und es wurde von mir tatsächlich seinerzeit so eigebaut:

Die Arrays sind null-basierend und die Angabe beim Dimensionieren gibt das jeweils letzte Element an. Der Begriff Dimensione an einigen Stellen der Aiuto ist hier tatsächlich irreführend.

Hintergrund der Geschichte: Seinerzeit (vor etwa 18 Jahren mit Profan² 6) wurde Profan² noch gerne genutzt, um Di base-Programme nach Windows zu portieren. In den verschiedenen Di base-Dialekten gab es die Arrays mal Null-basierend und mal mit 1 beginnend. Mit meiner Lösung konnten beide Varianten einfach übernommen werden. Wer einen nicht null-basierenden Quellcode nutzte, um etwa ein Schachbrett zu programmieren kam mit Declare Feld%[8,8] aus, auch wenn da die Felder mit 0 als Index unbenutzt blieben. Wer von einem null-basierendem Di base kam, hatte auch mit Declare Feld%[7,7] keine Probleme.

Außerdem mag auch die Pascal-Schreibweise, die bei Arrayas immer das (erste und) letzte Element und nicht die Dimensione angibt, meine damalige entscheidung beeinflusst haben.

Richtig ist, dass die Aiuto manchmal etwas irreführend ist, wenn ich von Dimensione schreibe, denn die eigentliche Dimensione ist durch das 0-Element ja in jeder Dimension eins mehr.

Ändern kann ich daran nach 18 Jahren wohl nichts mehr (außer am Aiuto-Text naturalmente) ohne zu Kompatibilitätsproblemen mit bestehenden Quellcodes zu kommen. (Denkbar wäre höchstens ein Schalter, um die Arrays aus Programmierersicht 1-basierend zu machen, damit bei Feld%[8,8] dann tatsächlich ein Array der Dimensione 64 beginnend bei Feld%[1,1] erzeugt wird.)

Saluto
Roland

PS: Ende dieses Jahres entwickle ich schon 25 Jahre an Profan. Ich werde alt! ;)
 
XProfan X3
Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4
01.02.2016  
 




RudiB.
Sorry...Whileloop 3 und Repeat 2 Durchläufe...
KompilierenMarkierenSeparieren
Set("ErrorLevel", 2)
CLS
Declare Liste$[2,2],Abgleich$,zähler%
Liste$[0,0]="2"
Liste$[0,1]="Test 1"
Liste$[0,2]="3.30"
Liste$[1,0]="5"
Liste$[1,1]="Test 2"
Liste$[1,2]="4.50"
Liste$[2,0]="3"
Liste$[2,1]="Test 1"
Liste$[2,2]="1.20"

Whileloop 3

    Abgleich$=Liste$[&loop-1,1]
    print &loop-1
    zähler%=1

    Repeat

        If Liste$[zähler%,1]<>""

            If Liste$[zähler%,1]=Abgleich$

                Print "Treffer"
                'traceon
                Liste$[&loop-1,0]=str$(Val(Liste$[&loop-1,0])+Val(Liste$[zähler%,0]))
                Liste$[&loop-1,2]=str$(Val(Liste$[&loop-1,2])+Val(Liste$[zähler%,2]))
                Liste$[zähler%,0]="":Liste$[zähler%,1]="":Liste$[zähler%,2]=""
                'traceoff

            EndIf

        Endif

        Inc zähler%

    Until zähler% >=2

Endwhile

whileloop 3

    Print &loop-1,Liste$[&loop-1,0],Liste$[&loop-1,0],Liste$[&loop-1,0]

EndWhile

waitinput
 
Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
28.12.2015  
 




RudiB.
hier noch die Fehlermeldung....


24 kB
Hochgeladen:28.12.2015
Downloadcounter90
Herunterladen
 
XProfan 9
WinXP, SP2, AMD Phenom(tm) II X4 840 Processor

Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
28.12.2015  
 




Jörg
Sellmeyer
[OFFTOPIC]Wenn du deinen Code in Code-Tags packst, ist er leichter lesbar.[/OFFTOPIC]


Bei mir corre das Programm ohne zu murren durch.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
28.12.2015  
 




RudiB.
Habs gerade mit XProfan 11.2 getestet....da gehts auch..jedoch bei 9 + 10 Absturz....versteh ich nicht.....aber trotzdem Danke fürs anschauen....Guten Rutsch ins Neue Jahr...an alle...
 
XProfan 9
WinXP, SP2, AMD Phenom(tm) II X4 840 Processor

Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
28.12.2015  
 



@rudi: Declare Liste$[2,2]
Val(Liste$[&loop-1,2])

Zweite Dimension hat Indexe 0;1, aber nicht 2.
 
28.12.2015  
 




RudiB.
doch, doch....hast Du wohl missverstanden.

Declare Liste$[2,2] // das sind 9 Elemente
List$[0,0],List$[0,1],List$[0,2],List$[1,0]..........List$[2,1],List$[2,2]
 
XProfan 9
WinXP, SP2, AMD Phenom(tm) II X4 840 Processor

Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
28.12.2015  
 



liste$[2,2] hat 2x2=4 Einträge:

Aiuto
Bei statischen Arrays folgt hinter dem Postfix in eckigen Klammern die Angabe der Dimensione.


Indexes=
0,0
1,0
0,1
1,1


Schau:
KompilierenMarkierenSeparieren
declare l$[2]
print sizeof(l$[])

Index beginnt bei 0.
 
28.12.2015  
 




RudiB.




?? schau

6 kB
Hochgeladen:28.12.2015
Downloadcounter98
Herunterladen
22 kB
Hochgeladen:28.12.2015
Downloadcounter100
Herunterladen
 
XProfan 9
WinXP, SP2, AMD Phenom(tm) II X4 840 Processor

Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
28.12.2015  
 



Fehler in SizeOf bei Deinem Beispiel, muss 4 bei raus-kommen.

Muss Roland fixen, habs bei Bugs einsortiert:  [...] 
 
28.12.2015  
 




RudiB.


dann müsste XProfan aber schon in Zeile 8 maulen..... tut es aber erst wenn ich wie hier Zeile 15 einfüge.== das Element gibt es nicht. !!

Und am Ende meines listings werden die werte ja auch wieder korrekt ausgelesen. (Whileloop)

11 kB
Hochgeladen:28.12.2015
Downloadcounter83
Herunterladen
 
XProfan 9
WinXP, SP2, AMD Phenom(tm) II X4 840 Processor

Xprofan X4
Rudolf Beske / München

Hardware: NB Intel I9 - 16GByte RAM
28.12.2015  
 



Fehlende Fehlermeldungen und falsches SizeOf-Ergebnis besser nicht als Referenz verwenden.

declare a$[2,2] definiert 4 Felder, nicht 9.
(ist in ziemlich allen Programmiersprachen so der Fall)  

Wenn Du 9 Felder möchtest dann [3,3].

So steht es auch in der XProfan-Aiuto.
 
28.12.2015  
 




Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

34.140 Views

Untitledvor 0 min.
Member 361000528.09.2022
H.Brill27.09.2022
p.specht08.06.2021
Jörg Sellmeyer14.05.2018
Di più...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie