1

exeをdllに変換mainし、C++プログラムのDLLから関数を手動で呼び出そうとしています。

このexe(別のC ++プログラムから生成された)のコードの主な関数は次のようになります。

int main(int argc, char* argv[])

さて、私のC ++プログラムでは、以前は次のようにコマンドライン引数をこのexeに渡していました。
system(somexe test.txt test1.txt test2.txt);

int argcとはargv array自動的にexeプログラムに渡されます。ただし、この関数を手動で呼び出す必要がある場合、上記のパラメーターをどのように渡すかはわかりません。これらのパラメーターを使用して毎回手動で配列を生成し、この配列の要素数を手動で渡す必要がありますか?

4

2 に答える 2

1

文字列配列を作成し、main.intに渡すだけです。argcは、配列内の文字列番号を意味します。argvは文字列配列を格納します。例:int argc = 3; char * argv [3] = {"argc1"、 "argc2"、 "argc3"}; main(argc、argv);

于 2012-05-03T06:22:21.793 に答える
0

関数printfを知っていますか?あなたはそれを同じように行うことができます。

int doit(int n1, ...)
{
    va_list arg_ptr;
    int n = n1;
    va_start(arg_ptr, n1);

    while (n > 0)
    {
         va_arg(arg_ptr, int);
    }

    va_end(arg_ptr);
}
于 2012-05-03T05:51:37.283 に答える