错误:对';的调用没有匹配函数;显示屏幕XY';在2D表格中 我正在学习C++,我想在每种情况下都显示带有x y坐标的简单表。 但当我构建它时,我得到了以下错误: 错误:调用“displayScreenXY”时没有匹配的函数
我试着替换错误:对';的调用没有匹配函数;显示屏幕XY';在2D表格中 我正在学习C++,我想在每种情况下都显示带有x y坐标的简单表。 但当我构建它时,我得到了以下错误: 错误:调用“displayScreenXY”时没有匹配的函数,c++,C++,我试着替换 void displayScreenXY(int **tab, int x, int y); 借 但我得到了这个错误: 错误:数组的元素类型“int[]”不完整 无效显示屏幕XY(整数选项卡[],整数x,整数y) 我错过了什么? 谢谢你的帮助 佐尔坦 #include <iostream> using namespace std; #define xDiv 8 #define yDiv 6 void displayScreenXY(int **tab, int x
void displayScreenXY(int **tab, int x, int y);
借
但我得到了这个错误:
错误:数组的元素类型“int[]”不完整
无效显示屏幕XY(整数选项卡[],整数x,整数y)
我错过了什么?
谢谢你的帮助
佐尔坦
#include <iostream>
using namespace std;
#define xDiv 8
#define yDiv 6
void displayScreenXY(int **tab, int x, int y);
int main(){
int screenXY[yDiv][xDiv] = {0};
displayScreenXY(screenXY, xDiv, yDiv);
return 0;
}
void displayScreenXY(int **tab, int x, int y){
for (int j = 0; j < y; ++j){
for (int k = 0; k < x; ++k){
std::cout << j << k << " ";
}
std::cout << endl;
}
}
#包括
使用名称空间std;
#定义xDiv 8
#定义yDiv 6
无效显示屏幕XY(整数**选项卡,整数x,整数y);
int main(){
int screenXY[yDiv][xDiv]={0};
显示屏幕XY(屏幕XY、xDiv、yDiv);
返回0;
}
无效显示屏幕XY(整数**选项卡,整数x,整数y){
对于(int j=0;j std::cout指向数组的指针的转换仅适用于多维数组的最外层维度。因此,int[yDiv][xDiv]
不能转换为int**
如果您将签名更改为:
void displayScreenXY(int tab[yDiv][xDiv], int x, int y);
它将按预期工作。多维数组不是指向指针数组的指针。这回答了您的问题吗?实际上这里有两个问题。为什么int tab[]会出现错误
在我上面链接的问答中有解释,但我意识到它对你的问题不是一个好的复制品。@最大的\u prime\u是\u 463035818它对我有帮助,但仍然不起作用。所以我做了更正,现在我得到:错误:调用“displayScreenXY”没有匹配的函数。它与你的更正一起工作
void displayScreenXY(int tab[yDiv][xDiv], int x, int y);