関数を使用してグローバルポインタとして宣言された動的に割り当てられた行列を操作しようとしています。簡単にするために、ここにコードを貼り付けるつもりはありませんが、同等の、おそらくより明確な例を提供します
structname **variable;
int main()
{
variable = readfile("filename");
variable = modify(variable);
output(variable);
}
これは非常に単純に見え、入力と出力は正しく機能します。問題は、「変更」関数が変更を行わないことです。これはその一例です。
structname **modify(structname **p)
{
swapitems(p[x][y],p[j][z]);
modifyitem(p[x][y]);
return p;
}
と
void swapitems(structname a, structname b)
{
structname buffer;
buffer = b;
b = a;
a = buffer;
}
問題は、要素を渡すことができないことだと思いますswapitems
。modifyitem
そのような関数を使用してアイテムを変更するにはどうすればよいmodify
ですか?(もちろん、コンパイルエラーはありません)