-13 c
#include <stdio.h>
int main() {
int a[4] = {1, 2, 3, 4};
int b[4] = {1, 2, 3, 4};
int n = &b[3] - &a[2];
printf("%d\n", n);
}
Run Code Online (Sandbox Code Playgroud)
这个问题的输出是-3,任何人都可以解释这是怎么回事?
减去"无关"指针,即指向不同对象的指针是不确定的.
C11-6.5.6-9
当减去两个指针时,两个指针都指向同一个数组对象的元素,或者指向数组对象的最后一个元素的元素;