一、示列
#include <stdio.h>
int main(int argc, char *argv[], char *envp[]) {
// 第二个的参数个数
printf("argc: %d\n", argc);
printf("\n");
// 打印第二个参数的所有值
for (int i = 0; i < argc; ++i) {
printf("argv[%d]: %s\n", i, argv[i]);
}
printf("\n");
// 获取所有环境变量
int i= 0;
while (envp[i] != NULL) {
printf("envp[%d]: %s\n", i, envp[i]);
i++;
}
return 0;
}
二、参数说明
- 第一个参数 argc ,用于存放命令行参数的个数。
- 第二个参数 argv,是个字符指针的数组,每个元素都是一个字符指针,指向一个字符串,即命令行中的每一个参数。
argv[0]的值为当前程序的绝对路径,argv[1]开始才是命令行传入的参数。
- 第三个参数 envp ,也是一个字符指针的数组,这个数组的每一个元素是指向一个环境变量的字符指针。