这是我的代码: void playerproc(int player) {
switch(player)
{
case 1:
move=(numSticks+4)%5;
return move;
break;
case 2:
srand(5);
move=(rand()%4)+1;
return move;
}
}
void nimmanager(int numStick)
{
numSticks=numStick;
int player;
Thread *t=new Thread("Players");
while(numSticks!=0)
{
player=1;
int move=t->Fork(playerproc,player);
numSticks-=move;
printf("Name of the player: %d\nNumber of sticks taken:%d\nNumber of sticks left=%d",player,move,numSticks);
player=2;
int move=t->Fork(playerproc,player);
numSticks-=move;
printf("Name of the player: %d\nNumber of sticks taken:%d\nNumber of sticks left=%d",player,move,numSticks);
}
printf("Winner is player 1");
}
这是 NIM 游戏的代码。现在我想从方法 playerproc(我使用 fork() 生成)返回值,并在方法 NIM 管理器中获取它的返回值。我无法得到它。我正在使用 NachOs。