我是 C 的新手,这是一个简单的程序:
#include <stdio.h>
#define str char *
int main(int k, const str argv[]) {
while(* argv) puts(* argv ++);
return 0;
}
所以当我输入 shell 时,./myprogramm somearg otherarg
我得到:
我的程序 苏玛格 其他参数
我想做的是跳过第一个参数并拥有: 苏玛格 其他参数
重要的是我想保留 *argv 实现
我知道我可以做这样的事情:
#include <stdio.h>
#define str char *
int main(int k, const str argv[]) {
int i = 0;
while(i<k-1){
puts(argv[++i]) ;
}
return 0;
}
但我想保留 *argv 实现
提前致谢
最佳答案
对于第一个版本的最小变化,您可以使用
while(*++argv) puts(*argv);
在你的主循环中。它立即跳过参数“零”。 (已测试)
关于c - 显示 *argv 除了第一个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32021219/