void 型と NULL ポインター void 型 void : 関数が値を返さない時の宣言型 「引数が一つもない」場合にも、「引数宣言で『void』とする」 void へのポインタ型 (void *) どの型へのポインタ値かが不明な場合のポインタ値を表す型 基本は「意味(型)がない」ポインター値 ( (void *)型に * を付けても値が取り出せない ) NULL ポインタ : 「無意味なポインタ値」を表すポインタ値 「意味のあるポインター値と異る事」が保証されている (「#define NULL ((void *)0)」と定義されている) ポインタ値を返す関数のエラーが生じた時の値として用いられる 例 : alloc : (メモリ確保) に失敗した場合 / fgets(入力) : 入力に失敗