【发布时间】:2011-03-31 21:00:31
【问题描述】:
可能重复:
2D arrays with C++
嗨,我正在尝试将一个指针复制到一个矩阵,该矩阵是我要传递给 C++ 中的一个函数的。这是我的代码试图表达的内容
#include <iostream>
using namespace std;
void func( char** p )
{
char** copy = p;
cout << **copy;
}
int main()
{
char x[5][5];
x[0][0] = 'H';
func( (char**) &x);
return 0;
}
但是,这给了我一个 Seg Fault。有人可以解释一下(最好是详细一点)我错过了什么潜在的机制吗? (以及它的修复)
非常感谢:)
【问题讨论】:
-
A
char**与char [][]不相同。真的。有许多问题需要详细讨论。我会四处寻找一两个。 -
stackoverflow.com/q/1285457/2509 是 c++ 特定的,stackoverflow.com/q/917783/2509 stackoverflow.com/q/2003745/2509 stackoverflow.com/q/2003745/2509 都标记为 [c],但就使用数组和指针而言,问题是相同的(请注意,在 c++ 中有更多的选择)。
标签: c++ pointers segmentation-fault pass-by-reference