莫名其妙的过了

P1996 约瑟夫问题

啊?
by luogu10086 @ 2023-12-10 22:35:47


@[libc](/user/1147576) 会不会有一种可能,因为 `a[i]` 表示 `a` 数组的第 `i` 位,而 `a` 本身是个指针,所以 `a[i]` 就会变成 `a+i`,而这里也是同理,编译器把他当成 `p+a` 了(但这好像也说不过去啊(??))
by Steve_xh @ 2023-12-10 22:46:03


@[libc](/user/1147576) 和`a[p]`貌似是等价的
by qweradf @ 2023-12-10 22:49:20


p[a]和a[p]是一样的
by pV_equals_nRT @ 2023-12-10 22:50:11


p[a]相当于a[p]
by cff_0102 @ 2023-12-10 22:50:47


@[Steve_xh](/user/639198) 看来我的猜想是对的,编译器把他当作 `p+a`,也就等价于 `a[p]`
by Steve_xh @ 2023-12-10 23:53:27


奇怪的知识增加了
by IOI_AK_TLR @ 2023-12-11 06:46:40


@[Steve_xh](/user/639198) 并不是,`a[p]` 等价于 `*(a+p)`,`p[a]` 等价于 `*(p+a)`,所以一样(你少了一个星号)
by Bingxiu @ 2023-12-11 07:03:46


`a[p]=*(a+p)=*(p+a)=p[a]` 所以`a[p]` 与 `p[a]` 是等价的
by Yuxianjiang @ 2023-12-11 07:58:23


@[Bingxiu](/user/676498) 理解,感谢修正
by Steve_xh @ 2023-12-11 14:29:19


|