hallo zusammen
ich habe das problem dass ich ein übergebenes array(pointer) nicht auslesen kann.
ausgegeben wird:
wenn ich in der methode "countStudentsPerMark" das array ausgebe kommt folgendes raus (was korrekt ist):
ich verstehe nicht was ich falsch mache. hab sehr viel nachgelesen und probiert aber schaffe es einfach nicht![Traurig :( :(](/forum/styles/smilies/frown.gif)
ich habe das problem dass ich ein übergebenes array(pointer) nicht auslesen kann.
Code:
#include <stdio.h>
int marks[3] = {4,3,1};
int* countStudentsPerMark() {
int arrMarkTable[6] = {0, 0, 0, 0, 0, 0};
int i = 0;
while(i<3) {
switch(marks[i]) {
case 1: arrMarkTable[0]++;
break;
case 2: arrMarkTable[1]++;
break;
case 3: arrMarkTable[2]++;
break;
case 4: arrMarkTable[3]++;
break;
case 5: arrMarkTable[4]++;
break;
case 6: arrMarkTable[5]++;
break;
}
i++;
}
return arrMarkTable;
}
int main(void) {
int i = 0;
int *arr;
arr = countStudentsPerMark();
while(i<6) {
printf("<%d>\n", arr[i]);
i++;
}
return 0;
}
ausgegeben wird:
<1>
<2130567168>
<13>
<2686668>
<0>
<2686916>
wenn ich in der methode "countStudentsPerMark" das array ausgebe kommt folgendes raus (was korrekt ist):
<1>
<0>
<1>
<1>
<0>
<0>
ich verstehe nicht was ich falsch mache. hab sehr viel nachgelesen und probiert aber schaffe es einfach nicht
![Traurig :( :(](/forum/styles/smilies/frown.gif)