什么是数组中元素的前置任务?我怎么找到它?

时间:2015-01-03 09:35:46

标签: c++ arrays

我试图谷歌但是徒劳无功。

1 个答案:

答案 0 :(得分:2)

在C ++中,数组存储在连续的内存中。

这意味着如果你有一个元素x并且你知道它在数组中并且它不是数组的第一个元素,那么之前的元素是

*(&x - 1)

即。在我们减去1之后由x的地址指向的元素(注意这是有效的,因为C ++中的指针算法考虑了元素大小,因此&x - 1不是指向之前的字节,而是指向之前的元素)