我新的C,這裏是一個簡單的程序:顯示所* argv的除了第一個參數
#include <stdio.h>
#define str char *
int main(int k, const str argv[]) {
while(* argv) puts(* argv ++);
return 0;
}
所以,當我在鍋殼式,./myprogramm somearg otherarg
我得到:
myprogram somearg otherarg
我希望做的是跳過第一個參數,具有: 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執行
在此先感謝
難道你不能做* argv ++;然後使用while循環? (跳過第一個值) –
不,我的陣列會走得很遠,我會得到「分割錯誤 」錯誤 –