G'day all、2次元配列へのポインタを設定し、そのポインタを関数に渡す
これはかなり議論されていますが、私はまだ必要なものを見つけることはできません。私はC言語ではまだ新しく、ポインタ、つまり多次元配列へのポインタについても頭を抱えています。
私はint a[2][3]; int (*p) = a
のような例を見てきましたが、aが2次元配列の場合、括弧は何をしますか?
私は変数として2D配列を持つプログラムを作成しており、その配列を外部関数に渡してそれを変更する必要があります。
私の配列は、このようinitilisedさ:
unsigned int node[3][2]={ {PINB,PINC}, {0,0}, {0,0} };
私はこれを行うための最善の方法は、ポインタを介していると考えているが、私はどのようにセットアップ2Dに取り、私の関数のプロトタイプをするのか分かりませんアレイ。
NodeToMIDI(node, i, pMIDIdata);
そして、これがその原型である://「node_pointerは」2Dアレイのargである
これは、にし、どのように私はそれを呼び出すそれを渡す機能イムです。
void NodeToMIDI(unsigned int node_pointer, unsigned int node_select, unsigned int * MidiPacket);
誰かがこれを行う方法の背後にある構文とロジックを説明していただけます。私が見ている他のスレッドのいくつかは、私には知られていない構文を持っています。例えば、int ** a
など。
ありがとうございました! Andrew。