我正在用C ++编写TicTacToe游戏。我正在使用2D角色阵列将每个玩家的棋子输入正方形。但是,对于输入,我要求用户键入A1,它将是棋盘[0] [0]和游戏板的左上角。如何允许用户输入A1,但仍允许在没有硬编码的情况下将其设置为[0] [0]?此外,用户可以确定电路板尺寸。最小值:3x3,最大值:13x16。
答案 0 :(得分:0)
(假设董事会是3x3,或最多9x9)
从用户那里获取两个字符,确保第一个是大写字母,第二个是数字,并且它们在正确的范围内。
请注意 - 在您可能正在处理的大多数平台上 - 如果字符变量c
具有值'A'
,'B'
或'C'
,那么表达式{{ 1}}具有值c - 'A'
,0
或1
,您可以将其用作索引。不过,这不是100%可移植的代码,正如@SomeProgrammerDude指出的那样。
...如果电路板较大,您可能必须允许列和行的多字符规范,并适当地解析它们。 <{1}}索引当然会一直运行到2
。