Hallo Adrian_Pryde,
da führen viele Wege nach Rom. So wie du es gemacht hast, kann es schon funktionieren. In einem Beispiel sähe das so aus:
#include
int sum(int arr[], unsigned char size);
int main()
{
int myArr[5] = {1, 1, 2, 3, 5};
std::cout
Den size-Übergabewert könnte man übrigens automatisch ermitteln aber das würde ich eher zu fortgeschritten zählen.
Ich vermute aber, dass das nicht jeder Compiler mitmachen wird, und selbst wenn er es macht (wie bei mir), würde ich es anders implementieren, z.B. so:
#include
int sum(int \*arr\_ptr, unsigned char size);
int main()
{
int myArr[5] = {1, 1, 2, 3, 5};
std::cout
Wenn du das nicht verstehst, ist das eine gute Gelegenheit, sich mit Pointer-Arithmetik auseinander zu setzen :smiley:
Spätestens wenn du ein Array "zurück geben" möchtest, brauchst du die Methode aus dem zweiten Beispiel, weil man ein Array nicht direkt zurück geben kann, es sei denn man baut sich eine Struktur oder eine Klasse, die ein Array beinhaltet (aber das ist meiner Meinung nach auch schon fortgeschrittener).
Deshalb müsste man es eher so machen:
#include
void createArr(int \*arr\_ptr, unsigned char size);
int main()
{
int myArr[5];
createArr(&myArr[0], 5);
for (int i=0; i
Ich hoffe, dass ich helfen konnte.