Deutsch
Forum

Prozeduren Rückgabe-Variabeln

 

rquindt
Hallo

Ich kann einer Prozedur / Funktion ja 15 Parameter übergeben.
Gibt es eine Möglichkeit, mehr als einen Parameter zurück zu geben?
 
14.12.2015  
 




Georg
Teles
Spontan fällt mir sowas ein
CLS
Declare ret$
ret$ = mehr()
print Val(SubStr$(ret$,1,","))
print Val(SubStr$(ret$,2,","))
print SubStr$(ret$,3,",")
print Val(SubStr$(ret$,4,","))
print SubStr$(ret$,5,",")

Proc mehr

    Return "1,2,drei,4,fünf"

EndProc

Waitinput

du gibst alle Werte als String mit Trennzeichen zurück und beim Auslesen mit SubSTR$() wandelst diese Werte in entsprechende Typen um
 
XProfan X3
TC-Programming [...] 
XProfan 8.0 - 10.0 - X2 - X3 - X4

14.12.2015  
 




Jörg
Sellmeyer
Mir fällt da noch sowas ein:
Proc MultiRueck

    Declare Rueck$[4]

    If %pcount

        WhileLoop 0,%pcount-1

            Print $(&Loop+1)
            Rueck$[&Loop] = $(&Loop+1)

        Wend

    EndIf

    Return Rueck$[]

EndProc

Declare Werte$[4]
Print "Eingabe"
Werte$[] = MultiRueck("A","B","C","D")
Print "\nAusgabe"

WhileLoop 0,3

    Print Werte$[&Loop]

Wend

WaitInput
 
XProfan X3
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
14.12.2015  
 



rquindt (14.12.15)
Gibt es eine Möglichkeit, mehr als einen Parameter zurück zu geben?


Eine Funktion liefert immer 1 Rückgabe, die für mehrere Werte durchaus vom Typ Array, Stringliste, Speicherhandle sein kann und somit beliebig viele Werte transportieren kann.

In XProfan und Basic kann man aber aus einer Funktion auch globale Variablen beschreiben und es sich damit sehr einfach machen.
 
15.12.2015  
 




H.Brill
Nimm doch einfach einen Bereich mit
einer Struktur drinnen. Entweder global
definieren oder sowas geht auch :

Obwohl meines eher doppelt gemoppelt ist.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
15.12.2015  
 




rquindt
Danke für die schnellen Tips.
Ich werde mal probieren,
was für mein Programm am besten geeignet ist.
 
15.12.2015  
 




ByteAttack
Kannst auch einfach eine Stringliste benutzen.
Beispiel:
cls
var tempList&=Create("List",0)
var HexColor$="#FFFF00"
var FontColor$="#FF0000"
var PGZWeb$="Eintrag"

Proc Plus15

    Parameters Text$
    Declare i%

    WhileLoop GetCount(tempList&)

        Text$=Translate$(Text$,"{"+Str$(i%)+"}",GetString$(tempList&,i%))
        Text$=Translate$(Text$,"°",Chr$(34))
        inc i%

    EndWhile

    Return Text$

EndProc

ClearList tempList&
AddString(tempList&,HexColor$)'0
AddString(tempList&,FontColor$)'1
AddString(tempList&,PGZWeb$)'2
Plus15 "<td align=°center° valign=°middle° bgcolor=°{0}° class=°Smaller°><font color=°{1}°>{2}</font></td>"
Print $(0)
WaitInput
 
XProfan X3
Website:  [...] 
Facebook:  [...] 
16.12.2015  
 




Michael
W.
Das "inc i%" wäre auch unnötig, wenn
WhileLoop 0, GetCount(tempList&) - 1


und dann die I% gegen &loop getauscht werden.

[OFFTOPIC]Ich benutze für meine Templates übrigens {{x}} und auch das Gradzeichen. Die einfachen geschweiften Klammern kommen nämlich in meinen Texten vor.[/OFFTOPIC]
 
XProfan X3
System: Windows 8/10, XProfan X4
Programmieren, das spannendste Detektivspiel der Welt.
20.12.2015  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

6.902 Betrachtungen

Unbenanntvor 0 min.
Daniel23.04.2022
rafl11.01.2021
p.specht23.12.2020
Georg Teles04.05.2016
Mehr...

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


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