| |
|
|
- Página 1 - |
|
Georg Teles | Bueno Abend,
nun bastel Yo a mi Cryptsystem & bajo Anderem Yo quería una Quellcode a algo Ähnlichem hier puesto y lugar fest, dass con XPSE kompilierte Programas en nativen Prozeduren con Schleifen una Valor siempre en 7 größer zurückgeben como él ser debería...
hier 2 Beispiele como Fuente:
con XProfan kompilierter Texto, Procedimiento son richtigen Valor zurück (55619): KompilierenMarcaSeparaciónDeclare dat#,dat&,res&
Declare wert$
Dim dat#,8
CLS 0
Word dat#,0 = 9812,3484,60000,22315
res& = cryrst_(dat#,8)
wert$ = Str$(res&)
print wert$
Waitinput
Proc cryrst_
Parameters ber#,ps&
Declare s&,res&
If ps& MOD 2 = 0
s& = (ps&\2)-1
Else
s& = (ps&\2)
EndIf
WhileLoop 0,s&
res& = res&+word(ber#,&loop*2)
If res& > 20000
res& = (res&-20000)
Endif
EndWhile
res& = (res&+ps&)
Return res&
ENDPROC
haargenau selber Code en XPSE, son el richtigen Valor el en 7 größer es (also 55626): KompilierenMarcaSeparación {$cleq}
Declarar dat#,dat&,res&
Declarar wert$
Dim dat#,8
CLS 0
Word dat#,0 = 9812,3484,60000,22315
res& = cryrst_(dat#,8)
wert$ = Str$(res&)
imprimir wert$
Waitinput
nProc cryrst_
Parámetros ber#,ps&
Declarar s&,res&
If ps& MOD 2 = 0
s& = (ps&\2)-1
Más
s& = (ps&\2)
EndIf
WhileLoop 0,s&
res& = res&+word(ber#,&bucle*2)
If res& > 20000
res& = (res&-20000)
Endif
EndWhile
res& = (res&+ps&)
Volver res&
ENDPROC
hay esta una Erklärung ? |
|
|
| |
|
|
|
« Dieser Contribución wurde como Solución gekennzeichnet. » |
|
| In nProcs con declarar deklarierte Variables haben no es igual valor 0, el Variable se zwar deklariert pero se ihr kein Valor zugewiesen y Valor kommt entonces de el Speicher y kann cualquier ser.
Anders es (natürlich) si uno innerhalb nProcs con var deklariert z.B. KompilierenMarcaSeparación oder kürzer: KompilierenMarcaSeparación |
|
|
| |
|
|
|
|
| Bereichsvariablenparameter son kein nativ unterstützer Typ, übermittle veces el Adresse como Largo. (also addr(ber#) en lugar de (ber).
Nach logischen Fehlern Yo beim Überfliegen no geschaut. |
|
|
| |
|
|
|
Georg Teles | |
|
| |
|
|
|
Georg Teles | Problema gelöst:
Yo merke, dass lo en XPSE lo muy wichtig es, definierte Variables, con denen uno arbeitet, en 0 oder una Valor a conjunto, el uno braucht... KompilierenMarcaSeparación nun liefert sowohl con XProfan kompilierte & gelinkte Ver código fuente como auch con XPSE el selben korrekten Valor |
|
|
| |
|
|
|
E.T. | Hm, el verwundert mich doch algo: Sollten el neu declarierte Variables >Declarar c&,d& < no eigentlich en "0", d.h. leer ser ??
Ach, sehe gerade: Im Eingans-Posting declarierst du res& 2x, una vez beim Programa-Start y luego otra vez en el Proc / nProc.
En "Problem gelöst" declarierst du entonces en el "nProc-Schnipsel" c& y b& , also neue Variables. Yo denke veces, en el "Doppel-Declare" liegt el Hase begraben (ungetestet).
Was mich wundert es, el XProfan en deinem ersten Ejemplo en el ersten Post no meckert, el el Variable ya declariert es .
In el Ayuda es sólo a lesen
Alle Variables, el en Prozeduren deklariert voluntad, son sólo hay lokal gültig. Der verwandte Speicherplatz se en Verlassen el Procedimiento otra vez freigegegen
Was passiert, si en el Proc Variables declariert voluntad, welche ya en el Hauptprogramm decl. fueron, el kann uns wohl Roland beantworten
Frag ahora Por favor, no, por qué genau "um 7 mehr"... ... vlt. ha IF sí para esta Fall "Die glorreichen Sieben" en XPSE instalado |
|
|
| Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 17.09.2014 ▲ |
|
|
|
|
Georg Teles | E.T. (17.09.14)
Ach, sehe gerade: Im Eingans-Posting declarierst du res& 2x, una vez beim Programa-Start y luego otra vez en el Proc / nProc. ... Yo denke veces, en el "Doppel-Declare" liegt el Hase begraben (ungetestet).
Negativ, habe gerade con otro Variables getestet, selbes Ergebnis, exakt en 7 größer si yo el Variables después de el Declarar no nulle
möglicherweise darf no Variable 0 ser y el Declarar el "leeren Variable" valor 7 zuweist ?
E.T. (17.09.14)
Was passiert, si en el Proc Variables declariert voluntad, welche ya en el Hauptprogramm decl. fueron, el kann uns wohl Roland beantworten
el sería mich aber auch interés, meiner Erfahrung después de va lokal antes global, habe en media Programmen aber nie esta Fehler gemacht, sólo en Codesnippets getestet |
|
|
| |
|
|
|
RGH | Wenn en uno Procedimiento Variables deklariert voluntad, el auch ya en el Hauptprogramm deklariert son, entonces son el en el Hauptprogramm deklarierten Variables en el Procedimiento no sichtbar, d.h. ellos puede en el Procedimiento weder gelesen todavía geändert voluntad.
Saludo Roland |
|
|
| XProfan X2Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 17.09.2014 ▲ |
|
|
|
|
| In nProcs con declarar deklarierte Variables haben no es igual valor 0, el Variable se zwar deklariert pero se ihr kein Valor zugewiesen y Valor kommt entonces de el Speicher y kann cualquier ser.
Anders es (natürlich) si uno innerhalb nProcs con var deklariert z.B. KompilierenMarcaSeparación oder kürzer: KompilierenMarcaSeparación |
|
|
| |
|
|
|
Georg Teles | Ahh, vielen Dank ! Nun son beide Fragen geklärt worden. Con el Declarar erklärt auch, dass en cada Beispielcode Ende% antes Sinestar encargado-Bucle tradiztionell con Claro gelöscht o como var ende% = 0 deklariert y a Sicherheit en 0 gesetzt se. Dies es seit Programmiertanfang a en me para Standard geworden porque en media Programmen oft selbe Variables mehrmals verwendet voluntad, zB. temporäre, aber genauer darauf Yo sólo todavía nie geschaut |
|
|
| |
|
|