C++ Array übergeben Hallo! Hänge an einer kleinen Sache, komme aber trotzdem nich weiter! Wie kann ich komplette Arrays von Funktion zu Funktion übergeben? Er gibt bei mir immer nur einzelne Werte zurück! Aber ich möchte das ganze Feld zurückgeben haben von input[] zu a[] [CODE]int minput(); void main() { int a[2]; a[2]=minput(); } int minput() { int input[2]; cout << "Werte: " << endl; cin >> input[0] >> input[1]; return input[1]; }[/CODE] mfg Chris |
AW: C++ Array übergeben du legst das array an int[] arrayfunction(){ int[] arr1=new int[5]; return arr1; } in main rufst du die funktion auf void main(){ int[] arr2 = arrayfunction; } // array von funktion zu funktion übergeben //einfach den namen des arrays eintragen void main(){ int[] arr2=new arr[5]; function1(arr2); } void function1(int[] arr3){ //benutze arr3 das ist das selbe wie arr2 arr3[3]=0;//wert in array 3 ändern } |
AW: C++ Array übergeben uck dir mal an wie man mit pointern variablen übergeben kann, außerdem darfst du nciht nur einzelne elemente desarrays anwählen (also das [] weglassen wenn du das ganze array meinst) |
AW: C++ Array übergeben Ein Array ist in C++ ja nur ein Pointer eines bestimmten Typs, der auf einen Bestimmten Speicherblock verweist. Durch die [x] wird nur ein weiterer Pointer errechnet, z.b. bei nem int-Array(bei ner 32 bit-Maschine 4 byte pro wert) also *(arraypointer+4*x); Du musst also nur das Array(pointer) zurückgeben(praktischerweise mit dem selben typ). |
AW: C++ Array übergeben eckige klammern weglassen klingt einfacher ;) |
AW: C++ Array übergeben Wenn ich oben das Programm habe! Wie kann ich dann aus der Funktion minput(), das Array input[] an das Array a[] zurückgeben? Ich probier schon die ganze zeit rum! Ich bekomms nich hin! Kann das mal bitte kurz jemand umändern, wie er dieses Array in meinem Beispiel übergeben würde! Wenn ich die Klammern weglasse, spuckt mein Compiler nur Fehler aus! mfg |
AW: C++ Array übergeben [CODE] int[] minput() //<-- deine methode muss vom typ ineger array sein { int[] input=new int[2];//so legt man ein array an!!! cout << "Werte: " << endl; cin >> input[0] >> input[1]; return input; //<--- hier darfst du nicht die eckigen klammern nutzen } [/CODE] das haben wir aber oben schon beschrieben ;) und dann musst du natürlich auch das ergebnis der methode einem array zuweisen und nicht einem feld in einem array(es sei denn das feld in deinem array ist ein array ;)) also int[] a2=new int[2];//2 ist die länge des array a2=minput(); //a vweist jetzt auf das array input |
AW: C++ Array übergeben Du musst dann natürlich den Rückgabewert der Funktion nach int* oder int[] ändern(um keine Cast-Hässlichkeiten zu gebrauchen :inflames: ) Sonst passen die Typen ja nicht. |
AW: C++ Array übergeben Ich schmeiss einfach mal ne Frage in dazwischen :) Da ich mich ja auch mit C++ beschäftige wollte ich mal fragen was Arrays sind und wozu man die gebrauchen kann ? |
AW: C++ Array übergeben Arrays sind ein Feld von Werten, die man dann über ihren index ansprechen kann. Für bsp Mengen von Koeffizienten oder Koordinaten oder für Zeichenketten verwendbar. |
AW: C++ Array übergeben für viele viele sachen. wenn du zum beispiel messwerte erfasst dan kannst du die zunächst in arrays ablegen und dann zyklisch in ne daten bank schreiben. du kannst damit einfache spiele schreiben. wie tic tac toe (da ists dann ein 2dimensionales feld) alles in allem fasst du damit meist gleichartige daten zusammen. (wie die o.g. messwerte z.b. du kannst dir damit auch ne 'art' datenbank aufbauen also spalten und zeilen benutzen. eigendlich sind die einsatzmöglichkeiten beinahe unbegrenzt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:39 Uhr. |
Powered by vBulletin® Version 3.8.10 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
SEO by vBSEO 3.5.2 ©2010, Crawlability, Inc.