Почему происходит сбой моей программы на C при назначении значения указателю int?
Я пытаюсь заставить функцию взять некоторые целочисленные указатели, переданные из моей функции main (), и присвоить им значения. Тем не менее, моя программа падает при назначении значений. Вот мой код:
int computeMoveLocation(int* r, int* c, char* board)
{
//some code up here
*r = 0; //This breaks the program
*c = 0;
}
Я не пытаюсь изменитьадрес указателя - я пытаюсь изменитьстоимость целого числа, на которое указывают. Тем не менее, я, очевидно, делаю что-то не так.
Любая помощь будет принята с благодарностью.
РЕДАКТИРОВАТЬ: Вот соответствующий код из main (). Пожалуйста, дайте мне знать, если я должен включить что-нибудь еще.
int main()
{
//initialization code
//...
while (1)
{
switch (MACHINE_STATE)
{
case COMPUTER_MOVE :
{
//check rows for three Xs
//check columns for three Xs
//check diagonals for three Xs
//otherwise, move anywhere else
int *r, *c;
computeMoveLocation(r, c, board);
computerMove(*r,*c, board);
PREVIOUS_STATE = COMPUTER_MOVE;
MACHINE_STATE = HUMAN_MOVE;
break;
}
//Other cases
}//end switch
}//end while
}//end main