1

想知道如何将指针分配给数组成员:

struct foo {
    int INT;
}

int main() {
    foo bar[10];
    foo *baz;
    baz = bar[5];
}

这不起作用,但我想知道会发生什么。非常感谢您的帮助。

4

1 回答 1

5

你想做的baz = &bar[5];bar[5]引用第 6 个foo对象实例本身,因此只需将地址(带&运算符)分配给指针,与任何其他情况相同;

或者,您也可以这样做,baz = (bar + 5);因为这里bar不使用数字是指向第一个元素的指针,+5 给出第 6 个元素。

于 2012-11-23T05:45:11.173 回答