两个指针的差异

Difference of Two Pointers

我正在阅读 计算机系统:程序员的视角。在 3.8.2 节中有一个例子说 &E[i] - E 等于 i,假设 E 是一个 4 字节整数数组。为什么答案不是 4i?

这就是指针运算在 C 中的工作原理。

指针相减的结果以元素为单位,而不是以字节为单位。它与以下事实对称:如果您想访问数组 E 的元素 2,您可以使用 E[2]*(E+2),而不是 E[8]*(E+8)