Hey guys, the snippet of code below is the definition of a struct called "Game" as well as a function that has been initialised, called "Game throwdice" for my uni project. I have two questions what does the struct function type do? Also I want to be able to update the values in the struct from within the function. I am not allowed to change the definition of the Game throwdice function to use pointers. How would I go about changing the values of the struct? My attempt at making this work is in the second code snippet:
// advance the game to the next turn, typedef struct _game { int diceScore; int currentTurn; } Game; // assuming that the dice has just been rolled and produced diceScore // the game starts in turn -1 (we call this state "Terra Nullis") and // moves to turn 0 as soon as the first dice is thrown. Game throwDice (Game g, int diceScore); [/CODE]
My attempt at implementing this function:
[CODE] Game throwDice (Game g, int diceScore){ g.diceScore=diceScore; //update the diceScore in the struct g.currentTurn++; //advance the game to the next turn return g; } [/CODE]
Question
~Matt~
Hey guys, the snippet of code below is the definition of a struct called "Game" as well as a function that has been initialised, called "Game throwdice" for my uni project. I have two questions what does the struct function type do? Also I want to be able to update the values in the struct from within the function. I am not allowed to change the definition of the Game throwdice function to use pointers. How would I go about changing the values of the struct? My attempt at making this work is in the second code snippet:
My attempt at implementing this function:
Game throwDice (Game g, int diceScore){
g.diceScore=diceScore; //update the diceScore in the struct
g.currentTurn++; //advance the game to the next turn
return g;
}
[/CODE]
Link to comment
https://www.neowin.net/forum/topic/1073715-c-change-values-of-a-struct-within-a-function/Share on other sites
18 answers to this question
Recommended Posts