如何在使用2d数组作为参数的同时创建3d数组

时间:2018-07-21 23:50:02

标签: c++ arrays

    int main()
    {
      cout << "Welcome to the Maze Game!\n";
      cout << "(press ENTER to start)";
      cin.get();
      system("cls"); 
      bool maze[ROWS][COLS];
      loadMaze(maze);

      bool map[ROWS][COLS] = {};
      int 
        x = 0, 
        y = 0;

      map[y][x] = 1;

     printMap(map, x, y);

功能定义

我该如何定义,以便将地图用作参数。

void printMap(bool array[][ROWS][COLS])
{    
        // DECIDE BETWEEN:
        // print '.' if the user has been at spot before
        // print 'x' character (NOT the value of variable x) to MARK the user's current position
        // print '#' for spots the user has NOT been yet

}

1 个答案:

答案 0 :(得分:0)

您可以通过以下方式将map传递到printMap中:

void printMap(bool map [ROWS][COLS])

void printMap(bool map [][COLS])

如果要使用2D map创建3D数组,则可以在printMap中定义一个新的3D数组,并使用map中的数据。但是,我强烈建议您使用std::vector而不是原始数组,因为它们很容易使用。如果您有兴趣,herestd::vector上的一些文档。