配列とポインターはCでは同じものではありませんが、それらは関連しており、同様に使用できます。これまでのところ、全員が同意しています。
しかし、ポインタがCに含まれていた理由はわかりません。
配列表記(たとえば、a [5]またはint a [4] = {0,1,2,3};)を削除することは言っていません。これは非常に便利で便利です。しかし、見栄えをよくするために、ポインタと同じように(同じように)同じ表記を使用することもできます。したがって、配列表記は配列を持つ理由ではなく、単に表記です!
私が目にする唯一の違いは、配列は定数ポインタであり、それらが指すメモリのサイズは変更できないことです。しかし、これはポインタを使用して、正確にそれらを一定にすることによっても達成できます(メモリは固定サイズではありませんが、これが問題であるかどうかはわかりません)。
それでは、なぜポインタだけではなく、プログラマにポインタの動作(つまり、定数、定数ではなく、固定サイズ、可変サイズなど)を決定させるのでしょうか。
x = a + b * 2;
単純な式のシーケンスで同じことを達成できるような複合式があるのx = b; x*=2; x+=a;
ですか?