BubbleSort
-
Hi,
habe da mal folgendes Problem:
/******* Sortierfunktion ********/ void bsort(short *arr, int elements) { void swapshort(short *x, short *y); int i, k; for (i = elements-1; i != 0; i--) //äußere for-Schleife for (k = 0; k < i; k++) if(arr[k] > arr[k+1]) swapshort(&arr[k], &arr[k+1]); } /******* Tauschfunktion ********/ void swapshort(short *x, short *y) { short buffer; buffer = *x; *x = *y; *y = buffer; }
Muss denn der erste Parameter der Funktion bsort unbedingt ein Zeiger sein? Oder kann man auch nen ganz normale Werte nehmen?
-
jepp das muss er!
du übergibst ihm ja ein short-array, damit du das array verändern kannst brauchst du einen Zeiger auf das Array!mfg hohesC
-
Kann ich ihm auch ein zweidimensionales array übergeben?
-
ja klar! sogar ein Dreidimensionales!
aber du übergibst ja nicht das Array direkt, sondern auch nur ein Zeiger darauf.mfg hohesC
-
ja ist richtig.....aber kann ich denn auf diesen Zeiger einfach so ein zweidimensionales array "ablegen"? Und wenn, warum?
-
ja klar, du übergibst ja nicht das gesamte array an den zeiger, sondern nur die adresse des ersten elements:
p=&test1[0][0];
mfg hohesC