ポインタ

ポインタって,なにがややこしいって,ポインタそのものの概念じゃなくて,宣言と使い方だと思うんだけどな.
宣言時には * つけるとそれがポインタって意味になって,使うときは * が無いその変数名がポインタで,* は実体じゃん,それが結構ややこしくね,って思う.まあ現にだいぶ長いこと勘違いしてたことあったな.


まぁCは文法とか学校の課題とかはそれなりにできるけどやっぱ本当にこのあたりを理解してるかというと怪しいところで.


だからC++の本読んで改めてこのへんの復習をするってのも結構勉強になる.つか自分どんだけ身についてないんだって話だけど.

#include <stdio.h>

int main()
{
    int thing;
    int *thing_ptr;

    thing = 6;
    thing_ptr = &thing;

    printf("%d\n", thing);       // *
    printf("%d\n", &thing);      // **
    printf("%d\n", *thing_ptr);  // = * 
    printf("%d\n", thing_ptr);   // = **

    return 0;
}