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



我试图谷歌但徒劳无功。

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

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

*(&x - 1)

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

相关内容

最新更新