getaroundnum(uint row, uint col).txt

来自「用VC++设计与实现扫雷系统」· 文本 代码 · 共 28 行

TXT
28
字号
//in file : MineWnd.cpp

//获取某个小方块区域相邻8个区域的雷个数


UINT CMineWnd::GetAroundNum(UINT row, UINT col)
{
	UINT i,j;
	UINT around =0;
	UINT minRow = (row == 0) ? 0 : row-1;//确定实际的相邻方块的行起点
	UINT maxRow = row + 2;
	UINT minCol = (col == 0) ? 0 : col-1;
	UINT maxCol = col +2;

	for (i = minRow; i < maxRow; i++)
	{
		for(j = minCol; j < maxCol; j++)
		{
			//判断该行列数是否在雷区,不在雷区则跳过
			if ( !IsInMineArea(i,j) )  continue;
			//判断属性是否为雷方块,是则自增
			if ( m_pMines[i][j].uAttrib == ATTRIB_MINE)  around++;		
		}
	}
	return around;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?