会社の研修に落ちこぼれつつあるC初心者です。
ポインタがわからず、本を何冊も読みあさっていたら
今度は普通の変数がわからなくなりました。
変数とは一体何なんでしょうか。
メモリのどこかにあるデータを変数名で参照できるということは、
普通の変数も実体はメモリアドレスを表すポインタなのではないかと
いう気がします。

例えば int x = 100; とした場合
メモリのどこかに100というデータが入るわけですが
xという変数は、そのメモリのアドレスを持っていて
プログラムで変数名を書くと暗黙的に*が付いて
アドレスの示す先のメモリデータを参照している
のでしょうか。だとしたらポインタの存在意義は?
頭がおかしくなりそうです。