2

ポインターへのポインターにインデックスがある場合、C は何をするのかを知りたいです。例えば:

struct X {
  int a;
  int b;
};

struct X ** ptr;

ステートメントに次のものが含まれているとどうなりますか:

ptr[i] // where i is an unsigned int
4

3 に答える 3

1

ガベージ値を返します。「ptr」はポインタへのポインタであるため。実際に何を指しているのかを宣言していません。例えば..

#include<stdio.h>

struct X {
  int a;
  int b;
};
int main()
{
struct X ** ptr;

unsigned int i=1;
printf("%d",ptr[i]);
return 0;
} 

出力を得ました。

1483736418

これは、私が定義していないポインターのガベージ値です。

于 2013-09-27T05:45:29.163 に答える
0

ポインターは 1 回だけ逆参照されます。これは、式の型が であることを意味しstruct X *ます。これで、最初の 2D 配列の特定の行を持つすべてのポインターへの 1D ポインター配列ができました。

于 2013-09-27T05:46:20.020 に答える