template <int N>
void func(const char (&a)[N])
{
// Nは配列数
}

という風にC++なら出来るんだがな