char **に出くわしたとき、かなり混乱しましたが、文字列に対処する必要があるのでしょうか。
例えば:
double strtod(const char *nptr,char **endptr);
がNULLでない場合endptr、スキャンを停止した文字へのポインタは、が指す場所に格納されendptrます。---MSDN
これは非常に複雑ですが、文字へのポインタをコピーするだけではendptrどうでしょうか。endptr呼び出し後のすべての計算は、私が思うようにポインターの値をに渡すことによって実行できます。
本当にchar**必要ですか?