C++の場合
char *p[5]={&a,&b,&c,0,0};

のようにNULLではなくて、0を入れておくべきなんだっけ?