Ich versuche eine Funktion zu implementieren, die einen Würfel eine bestimmte Zeit lang würfeln soll.Wie sollte ich eine RolleDice() -Funktion in C implementieren?
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int * rollDice(int len) //len = times the dice is rolled.
{
int ints[len];
int i = len-1;
while(i>0)
{
ints[i--] = (rand()%6)+1;
}
return ints;
}
int main(int argc, const char * argv[])
{
int * ints = rollDice(10);
for(int i =0; i<10; i+=1)
{
printf("%d ",*(ints+i));
}
return 0;
}
Programm druckt immer dies, ist meine Vorstellung von Zeigern falsch?
104 0 0 0 1919706998 2036950640 1667723631 1836545636 16 48
'ints' ist a ** ** lokale Variable. Vielleicht sollten Sie ein oder zwei Minuten damit verbringen, über die Implikationen dieses Adjektivs nachzudenken. – Olaf