【发布时间】:2021-04-03 05:19:41
【问题描述】:
我的下一个代码出现错误 -“运行时检查失败 #2 - 围绕变量 'action' 的堆栈已损坏。”
bool playerTurn(char board[][22], char boardcover[][22], int rows, int cols)
{
char action[1];
int row, col, count = 0;
printf("please enter your move, row and column: ");
scanf("%d%d", &row, &col);
scanf("%s", action);
if (action[0] == 'F') {
boardcover[row][col] = 'F';
}
if (action[0] == 'O') {
boardcover[row][col] = board[row][col];
revealCell(board, boardcover, rows, cols, row, col);
}
return false;
}
可能是什么问题?
我尝试初始化“动作”并仅扫描字符,但一切都不是正确的解决方案,我仍然有异常。
【问题讨论】:
-
char action[1];数组不足以容纳输入字符 和(必需的)nul终止符。需要(至少)char action[2];。 -
你好。你能告诉我
makefile标志来打开运行时检查吗?我丢失了我的makefile配置。谢谢。
标签: c exception c-strings runtimeexception