什么是整数数组的指针

时间:2015-03-01 19:43:23

标签: c pointers

在这个例子中,它意味着什么?在我看来,对于数组b[]的所有地址,数组a[]将相应地指向其所有位置?那么我们是按照以下方式编写的吗?

int (*a)[10];  
int b[10];  
a = &b;

3 个答案:

答案 0 :(得分:1)

a是指向10 int数组的指针。 a=&b;表示a指向数组b,即它包含b的第一个字节的地址,它是数组b的地址。

答案 1 :(得分:0)

这意味着a是一个指向10个int数组的指针。像这样的声明,其中指定了多个元素,用于指向二维数组。喜欢

int (*a)[10];
int b[][10];
a=b;

如果要创建指向一维数组的指针,则不需要这样的声明。如果你有一个10个整数的数组,你想要指向它,只需执行此操作

int *a;
int b[10];
a=b;

另外&数组上没有必要,因为b已经是数组中第一个元素的地址。 &安培;仅当您需要像int *a=&b[5];

这样的数组的特定成员的地址时才需要

答案 2 :(得分:0)

a是指向10个整数数组的指针。 所以,例如,一个++会增加一个 通过int的大小(即= 4个字节)