gpt4 book ai didi

c++ - 如何通过指针打印二维数组? C++

转载 作者:太空宇宙 更新时间:2023-11-03 10:25:59 24 4
gpt4 key购买 nike

我创建了一个二维数组,并制作了一个指向第一个元素的指针。我正在尝试使用指针打印二维数组,但出现以下错误。不确定我在这里做错了什么。

source_file.cpp: In function ‘int main()’: source_file.cpp:15:27: error: invalid types ‘char[int]’ for array subscript cout << pname[x][y] << endl;

                       ^

#include <iostream>
#include <string>
using namespace std;

int main()
{
char name[2][2] = {'E', 'f', 'g', 'r'};
char* pname = &name[0][0];

for (int x = 0; x<2; x++)
{
for (int y = 0; y<2; y++)
{
cout << pname[x][y] << endl;
}
}
}

最佳答案

pname是指向 char 的指针.所以pname[x]char .因此pname[x][y]是尝试从字符中取出第 yth 项,就好像您输入了 char t; t[10]; .

假设你想传递一个指针,因为你想通过引用传递,你想接受一个参数 char pname[][10] .

如果您只想线性输出项目,请使用当前的 pname并继续 for(int c = 0; c < 4; c++) cout << pname[c] << endl; .

关于c++ - 如何通过指针打印二维数组? C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35211202/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com