組み込み技術を向上したい!!

でも組み込み以外にも手を出し始めました・・・

C言語 ポインタ

よくポインタの概念がわからんけん、教えてとか言われますが、たぶん難しく考えすぎなのだと思います。わからんかったら、僕のところに来てください。暇だったら相手します。

さて、ポインタですが、名前のとおり、ポイントを指しているのです。

int a;

という変数があったとします。この変数はシステム上のどこかに配置されます。配置される空間をアドレスといいます。住所ですね。xx県xx市みたいな。

int *p;

というポインタがあったとします。宣言された時点ではポインタはどこも指していないか、いい加減なところを指しているかだと思うので、宣言するだけではあまり意味がありません。

任意のアドレスを指して初めて意味があります。

p = &a;  /* &aは変数aのアドレスを意味する */

これで、pにaのアドレスを指させました。

*pでアドレスの指定先の中身をいじれます。例えば、

*p = 100;

とすると a の値は100になっていると思います。

間違えて

p = 100;

とすると、ポインタはアドレス100を指してしまうので、注意してください。

人間やればできるのです。失敗してもいいのです。一番いけないのは何もしなくなることです。

いっしょに前を向いて進みましょう。

Good luck!!