如何打印 2D 字符数组C++

How to print a 2d character array C++

本文关键字:2D 字符 数组 C++ 打印 何打印      更新时间:2023-10-16

我做了一个 2D 8x8 数组 ?s.代码编译时只有一个错误"未使用的变量'grid'",这对我来说不是,因为我将网格传递到每个方法中。但是,我没有打印的 8x8 网格 ?s.

//  main.cpp
#include <iostream>
#include <iomanip>
using namespace std;
//Declare global variables
const int ROWS = 8; //initialize number of rows
const int COLS = 8; //initialize number of columns
int guesses = 5; //Holds number of palyer's guesses

int main()
{
char grid[ROWS][COLS];
int buildGrid(char grid);
void displayGrid(char grid);
}
int buildGrid (char grid[COLS][ROWS]) {
for (int row = 0; row < ROWS; row++) {
for (int col = 0; col < COLS; col++) {
grid[col][row] = '?';
}
}
return 0;
}
void displayGrid (char grid[COLS][ROWS]) {
int row, col;
//print  multiplication table
for (row = 0; row < ROWS; row++)
{
// prints columns for my row
for (col = 0; col < COLS; col++)
{
cout << setw(3) << grid[row][col];
}
cout << endl;
}
}

看起来你混淆了函数声明和函数调用。 您应该在 main 之前(而不是在 main 中(转发声明函数,然后调用它 main。 这样:

int buildGrid(char grid[COLS][ROWS]);
void displayGrid(char grid[COLS][ROWS]);
int main()
{
char grid[ROWS][COLS];
buildGrid(grid);
displayGrid(grid);
}