typedef
スポンサーリンク
typedefは型を自分の好きな名前で宣言するときに利用するもので、
たとえばunsigned longが書くのがめんどうくさいのでulongとかに変えて
ulong a;とか宣言することでunsigned longを意味するようにします。
具体的な書き方は
#include<stdio.h> main(){ typedef unsigned char *str_p; str_p cp; return 0; }
こんな感じで書きます。
また何の型か分からなくなったとかでは恥ずかしいので自分(職場)なりの規則にしたがいましょう。
カーニハン(Cの作者)の著書、「プログラミング作法」ではグローバル変数は大文字から始める、ポインタ変数は前後にpをつける、等を推奨しているのでtypedefにも当てはめると便利です。
有効範囲はブロック単位({〜この間〜})で
#include<stdio.h> void fanc(){ typedef unsigned char *str_p; str_p c_datap; } main(){ str_p cp; return 0; }
こうするとエラーが出てしまいます。
この問題はグローバル領域で宣言することで解決できます。
#include<stdio.h> typedef unsigned char *str_p; void fanc(){ str_p c_datap; } main(){ str_p cp; return 0; }