使用execvp 来调用程序传参

注意: execvp 函数会根据环境变量来查找程序

程序:argc.c
  1 #include <stdio.h>
  2 
  3 
  4 int main(int argc, char *argv[]){
  5     while(--argc > 0){
  6         printf("%s\n", *(++argv));
  7     }
  8     return 0;
  9 }

gcc grgc.c -o argc 产生argc 

exoprt PATH=$PATH:./

程序:execvp.c

  1 #include <stdio.h>
  2 #include <stdlib.h>
  3 #include <unistd.h>
  4 
  5 
  6 int main(){
  7     char *argv[] = {"argc", "whj", "sjq", NULL};
  8     execvp("argc", argv);
  9     printf("failed\n");
 10     return 0;
 11 }


gcc execvp.c
运行 a.out  
结果: whj sjq

你可能感兴趣的:(linux)