今日読んだ本で驚いたこと

 C言語のポインタの話だけど。配列とポインタとの関係にこんなのがあったのか。

a[3] ⇔ 3[a] ⇔ *(a + 3)

 「3[a]」なんてソースに出たら確実に混乱するけど。ただ、筆者も「こんなのいきなり使うな」って言ってるし。
 んで、この記述を読んで「成る程!」と軽くアハ体験をしつつ、ポインタって、元々は配列を処理するための考え方なんじゃないかなぁ…、と想像してみた。んで、それをどれでも使えるようにしたら、むちゃくちゃわかりづらくなった分、わかっちゃった人にはすげー便利、みたいな。俺はまだわかんない人の部類だけど。