题
我正在尝试从单独的二进制文件中移动一些代码,并将其放入我的主程序中。不幸的是,我无法模仿主函数的初始化变量。
我该如何创建 argc
和 argv
用手?有人可以给我一些示例作业吗?
由于看起来像这样:
int main(int argc, char *argv[])
我认为我可以这样分配:
int argc=1;
char *argv[0]="Example";
但这行不通。谁能告诉我如何做到这一点?
解决方案
int argc = 3;
char *argv[4];
argv[0] = "fake /path/to/my/program";
argv[1] = "fake arg 1";
argv[2] = "fake arg 2";
argv[3] = NULL;
fakemain(argc, argv);
其他提示
最后一个元素 argv[]
数组实际上是 argv[argc]
这是一个 NULL
指针。
一些示例代码:
char *argv[] = { "first", "second", NULL };
int argc = sizeof(argv) / sizeof(*argv) - 1;
你为什么要那样做?如果使用IDE,则它将有一个选项添加命令行选项。如果您直接调用程序,请使用命令选项调用它
不隶属于 StackOverflow