我在课堂上得到了这个代码:
int main(int argc, char **argv)
{
if(argc)
{
return 1;
}
puts(argv[3]);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
现在,我应该编写第二个程序来执行它并使其打印“Hello World!”。所以我必须找到一种方法来传递参数(我假设使用 execv)同时让 argc 保持在 0。
这是我到目前为止:
int main(int argc, char **argv)
{
if(argc)
{
return 1;
}
puts(argv[3]);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这将在 Linux 上运行。
我尝试了 mbj 最初的建议,在参数数组中传递一个 0,但遗憾的是没有奏效。但是,如果我将 0 作为第一个参数,argc 将变为 0,但是当我尝试打印参数时会得到输出“LC_MEASUREMENT=de_DE.UTF-8”。谷歌搜索这也没有真正帮助我。
我在这里完全不知所措,所以任何帮助表示赞赏。