ポインタの基礎文法
C 言語のポインタを理解する の基本文法を説明します。
文法の基本は、宣言と使う場所で異なります。
言葉なんで実体とかは中身だと覚えてもいいと思います。
要は、* は XXXX と定義して覚えることで、考える際の立ち位置を明確にして、自分自身が混乱しないようにします。
とあると、
a = 1
*ap = 1
**app = 1
***appp = 1
****apppp = 1
と出力されます。
この a, ap, app, appp, apppp の関係を図示すると以下のようになります。

← 読んだらプチっとお願いします。
文法の基本は、宣言と使う場所で異なります。
- 宣言
- は、* をつけるとポインタです。
ポインタ変数がある場所を示すポインタは ** と 2 個 * を書くことで表現します、なので何個つけても基本的には問題ありませんが、通常プログラムを書く上では、** の 2 つくらいまでしか使わないと思います。 - 使う場所
- は、
- * がつくと実体(ポインタが指す先)。
& がつくと場所(ポインタ)
と定義しちゃっていいと思います。
言葉なんで実体とかは中身だと覚えてもいいと思います。
要は、* は XXXX と定義して覚えることで、考える際の立ち位置を明確にして、自分自身が混乱しないようにします。
int a;
int *ap;
int **app;
int ***appp;
int ****apppp;
a = 1;
ap = &a;
app = ≈
appp = &app;
apppp = &appp;
printf("a = %d \n", a);
printf("*ap = %d \n", *ap);
printf("**app = %d \n", **app);
printf("***appp%d \n", ***appp);
printf("****apppp = %d \n", ****apppp);
とあると、
a = 1
*ap = 1
**app = 1
***appp = 1
****apppp = 1
と出力されます。
この a, ap, app, appp, apppp の関係を図示すると以下のようになります。
