二次元アレイは、パラメータを渡します

C言語の関数は、多くの場合、二次元アレイを通過する必要があり、以下の3つの方法を実装することができるがあります。

この方法は、パラメータは、二次元の長さを与えます。

例えば:

する#include <stdio.hの>
ボイドFUNC(整数nは、  文字列str [] [5]  )
{
 int型私は、
 (私は++; iがn <I = 0)のため
  のprintf( "/ NSTR [%のD] =%S / N"、I、STR [I])。
}

ボイドメイン()
{
 するchar * P [3]。
 文字列str [] [5] = { "ABC"、 "DEF"、 "GHI"}。
 FUNC(3、STR)。
}

第2の方法のパラメータは、アレイへのポインタとして宣言されています。

例えば:

する#include <stdio.hの>
ボイドFUNC(整数nは、CHAR   (* STR)[5] 
{
 int型私は、
 (私は++; iがn <I = 0)のため
  のprintf( "/ NSTR [%のD] =%S / N"、I、STR [I])。
}

ボイドメイン()
{
 するchar * P [3]。
 文字列str [] [5] = { "ABC"、 "DEF"、 "GHI"}。
 FUNC(3、STR)。
}

 3つの方法がポインタへのポインタとして宣言されたパラメータ。

例えば:

する#include <stdio.hの>
ボイドFUNC(整数nは、チャー** STR)
{
 int型私は、
 (私は++; iがn <I = 0)のため
  のprintf( "/ NSTR [%のD] =%S / N"、I、STR [I])。
}
ボイドメイン()
{
 CHAR * P [3]。
 文字列str [] [5] = { "ABC"、 "DEF"、 "GHI"}。
 P [0] =&STR [0] [0]。
 P [1] = STR [1]。
 P [2] = STR [2]。
    FUNC(3、P)。

}

おすすめ

転載: www.cnblogs.com/saulgoodman611/p/11453878.html