视觉 使用 c++ 将棋子放置在连接四游戏中
visual Placing a piece in a connect four game using c++
好的,所以我有一个家庭作业,我不知道从哪里开始这个函数。
bool placePiece(char** pBoard, int colSize, int rowSize, int columnSelection, char player)
该功能是将一个由 char player 表示的棋子放置在游戏板 char** pBoard(由 colSize 和 rowSize 制成的 2dArray)上,该功能是将玩家棋子放在玩家回合期间选择的列的底部。 此外,如果一个片段已经在列的底部,它将该片段放在该列的顶部,如果列已满,它将返回 false。
我遇到的最大问题是我真的不明白我应该如何使用 pBoard。
我不是找人为我做这件事,而只是为了帮助我走上正确的道路。
要解决这个问题,你需要了解数组和循环。签名中的第一个参数是一个包含电路板数据的数组(接下来的两个参数是它的维度) - 您需要访问columnSelection
位置的第一个元素并将其设置为player
参数的值。返回值应指示操作是否成功。
bool placePiece(char** pBoard, int colSize, int rowSize, int columnSelection, char player) {
if (columnSelection >= colSize) {
/* invalid column */
return false;
}
for (size_t i = 0; i < rowSize; ++i) {
/* loop to go over all rows - starting with 0 */
if (pBoard[columnSelection][i] == 0) {
/* find first empty row and set it to 'player' value */
pBoard[columnSelection][i] = player;
return true;
}
}
/* no free row found -> all rows already set*/
return false;
}
此代码假定数组中的列行顺序从第 0 行向上,但您应该了解大致概念。
相关文章:
- 当套接字连接断开时检测C/C++Unix
- 在C++游戏中与库存系统作斗争
- 换位表导致测试失败(但在游戏中运行良好)
- 无法在windows上使用mingw将sqlite3与c连接
- 到连接组件算法的问题(递归)
- QTcpSocket在不阻塞GUI的情况下重新连接到服务器
- 无法在C++中建立与MySQL数据库的连接
- Craps游戏问题,忽略if语句
- PC中的程序和PHONE中的本机描述应用程序之间的数据连接
- 在Qt Creator中,如何在连接到正在运行的进程后查看控制台输出
- 连接 dockerized 模型和 dockerized 数据库时出现"无法 SQLConnect"错误
- 矢量下标超出SFML游戏中的范围
- 使用 bfs 解决连接组件问题时得到错误的答案
- 我是 c++ 的新手.学习基本知识后,我想做井字游戏.对于印刷板,我在下面写代码,但它显示错误
- 在C++的两个字符串中连接以逗号分隔的唯一值
- C++ 中连接 4 游戏的输入逻辑错误
- 错误:在“连接”中请求成员“板”,该“板”属于非类类型“游戏*”
- 将C++代码与汽车游戏连接
- 视觉 使用 c++ 将棋子放置在连接四游戏中
- (WINSOCK) c++游戏服务器:TCPAccept上一次有太多TCP连接