#include<stdio.h>
int main(){
int a = 3;
int *b;
b = &a;
printf("%d\n",b);
printf("%d\n",*b);
return 0;
}
まず、int a = 3;で変数のaに3を代入。 その後
int *b;
これはint型のポインタを入れる変数を宣言という意味です。ポインタって何???って言うと変数の住所、置き場所みたいな感じです。例えば今回a = 3でaという変数が作られましたが、そのaってメモリのどこにいるんだろう?っていうのがポインタです。
そして、
b = &a;
&aっていうのがaのポインタ、住所を指し示し、それをbに代入する感じです。
printf("%d\n",b);
にて、aの住所を表示。
printf("%d\n",*b);
この*bはどういう意味かというと、今回bにはaの住所、ポインタが入っていて、
その住所には実際にはなんの数があるの?って言うことを指します。よって前者は完全ランダム、後者は3が表示されるはずです。
実際難しい分野ですが一緒に頑張って行きましょう^q^