1

我正在尝试将 exe 转换为 dll 并main从我的 C++ 程序中的 DLL 手动调用该函数。

此 exe 代码中的 main 函数(从另一个 C++ 程序生成)如下所示:

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

现在,在我的 C++ 程序中,之前我将命令行参数传递给这个 exe,如下所示:
system(somexe test.txt test1.txt test2.txt);

int argc然后自动将andargv array传递给 exe 程序。但是,如果我必须手动调用此函数,我不确定如何传递上述参数。我是否必须每次使用这些参数手动生成一个数组,并手动传递该数组中的元素数量?

4

2 回答 2

1

只需创建一个字符串数组并传递给 main.int argc 表示数组中的字符串编号。argv 存储字符串数组。例如:int argc = 3;字符 *argv[3] = {"argc1","argc2","argc3"}; 主要(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 回答