Arrays an Funktionen übergeben
Übersicht

phil217Betreff: Arrays an Funktionen übergeben |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo Leute!
Ich hab nach einer Programmier-Pause mal wieder meinen BB-Editor geöffnet und stiess immer noch(welch eine Überraschung) auf das selbe Problem das ich damals nicht gelöst hatte ich hatte mir vorgenommen einen Rechner für grosse Zahlen zu Programmieren, der auf der Basis von Arrays arbeitet und die Zahlen aufspaltet d.h. zum beispiel zahl1(0) enthält die letzten 3/5/wassweissich wie viele ziffern nun zu meiner frage: ich habe drei derartige arrays(a, b, c) wenn ich nun 2 davon mit einer Funktion addieren möchte, wie übergebe ich diese zwei der Funktion addieren() Mit den normalen Übergabewerten kann ich ja nur einen Wert und kein Array übergeben hat jmd dazu eine Lösung? Phil217 |
||
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Da sieht's mit BB leider sehr schlecht aus.
Du kannst nur die Arrays global machen. Unflexibel uns hässlich, aber kaum anders machbar. |
||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
phil217 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das nützt mir reichlich wenig
das array unten zu benutzen is ja nicht das Problem. Das Problem is der Funktion zu "sagen" welche der drei Arrays sie nehmen soll |
||
![]() |
Hummelpups |
![]() Antworten mit Zitat ![]() |
---|---|---|
Blitzarrays kannst du an Funktionen übergeben. Das ist kein
Problem. |
||
blucode - webdesign - Ressource - NetzwerkSim
BlitzBasic 2D - BlitzMax - MaxGUI - Monkey - BlitzPlus |
phil217 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke das hilft schonmal
aber wenn man mehrdimensionale Arrays hat is das auch kein Ausweg |
||
BIG BUG |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Mehrdimensionale Arrays sind eigentlich nur eine Vereinfachung.
Wenn Du mit BlitzArrays mehrere "Dimensionen" abbilden möchtest, musst Du nur die Werte per Multiplikation in eine Dimension bringen. DIM blup(5,3) würde dann global blup[5*3] entsprechen. Das Ansprechen von z.B. blup(2,1) sähe dann so aus: blup[2*5+1]... |
||
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final) |
phil217 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
das is ein guter Ansatz ich werds mal so versuchen
danke an alle für die schnellen antworten ich post euch den rechner für die grossen zahlen falls er funktioniert und ich ihn fertigkrieg bevor ich die lust verlier^^ Phil217 Edit: Da taucht die nächste Frage auf Blitzarrays kann ich der funktion zwar übergeben, jedoch nicht mit return zurückgeben was mach ich da? |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
gib einen Type zurück der das Blitzarray enthält ![]() EDIT: Hab grad aus den Beispielen ersehen dass eine Rückgabe des Arrays insofern überflüssig wird als dass das Array innerhalb seines "grundscope" manipuliert wird. Siehe dazu hier: http://www.blitzbase.de/tutorials/shadow_5.htm |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
phil217 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hmm...
Danke für den Tipp. Wenn das so funktioniert wie ichs mir denke sollte eine Lösung gefunden sein ich muss dann ja einfach nur jedes array das ich 1) an die Funktion übergeben oder 2) von der Funktion zurückgeben will als Übergabewert bringen richtig? Phil217 Edit: jo Funktioniert aber ich hab ein neues Problem entdeckt: die Größe des zu übergebenden Blitzarrays muss jedes mal so gross sein wie ich sie in der Funktion angegeben habe, ich kann also die Funktion nur für gleich große Arrays nutzen |
||
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dann musst du wohl Banks nehmen. (ql:CreateBank)
Da kannst du mit ql:BankSize() abgfragen, wie groß die Bank ist. Die Benutzung ist ein bisschen umständlicher als bei Arrays, aber dafür sind die Dinger halt flexibler. MfG D2006 |
||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
phil217 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das is mir wohl doch zu umständlich
da mach ich lieber alle meine Arrays so gross dass es reicht und sie alle gleich gross sind... aber ich hätt trotzdem gern ne andere Lösung^^ Danke an alle für die Hilfe! |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group