该程序目前不输出任何内容.该程序用于获取整数命令行值,然后使用递归打印功能打印多次"测试".我是C的新手,无法弄清楚程序无法正常工作的原因,我没有收到任何编译错误.(仍在努力熟悉gdb)
#include <stdio.h>
void myfunc(int num)
{
if(num <= 0)
{
return;
}
else
{
printf("%s \n", "Test");
myfunc(num-1);
return;
}
}
int main (int argc, char *argv[])
{
int i;
i = atoi(argv[0]);
myfunc(i);
}
Run Code Online (Sandbox Code Playgroud)
因为你没有传递一个int:
i = atoi(argv[0]);
^
argument 0 is name of executable
Run Code Online (Sandbox Code Playgroud)
可能是你的需要:
i = atoi(argv[1]);
Run Code Online (Sandbox Code Playgroud)