hello~ 很高兴见到大家! 这次带来的是Linux系统中关于进程这部分的一些知识点,如果对你有所帮助的话,可否留下你宝贵的三连呢? 个 人 主 页: 默|笙
接上回进程(4)进程优先级、切换和调度。
//这是一段c语言代码
1 #include<stdio.h>
2
3 int main(int argc, char *argv[])
4 {
5 printf("argc:%d\n", argc);
6 int i = 0;
7 for (; i < argc; i++)
8 {
9 printf("argv[%d]->%s\n", i, argv[i]);
10 }
11 return 0;
12 }

4. 指针数组argv的结构差不多是这样,里面存储的是一个个的字符串首地址,argv[0]到argv[4] / argv[argc - 1] 是5即argc个有效参数,而argv[5] / argv[argc] NULL是数组的结束标志。 5. 命令行参数个数argc>=1,不可能小于1。
现在展示一段代码:
1 #include<stdio.h>
2 #include<string.h>
3
4 int main(int argc, char *argv[])
5 {
6 if (argc != 2)
7 {
8 printf("这个指令不是这样用滴,要这样用:%s -a|-b|-c|-d\n", argv[0]);
9 }
10 else if(!strcmp(argv[1], "-a"))
11 {
12 printf("执行该指令的第一个功能\n");
13 }
14 else if(!strcmp(argv[1], "-b"))
15 {
16 printf("执行该指令的第二个功能\n");
17 }
18 else if (!strcmp(argv[1], "-c"))
19 {
20 printf("执行该指令的第三个功能\n");
21 }
22 else
23 {
24 printf("执行该指令的默认功能\n");
25 }
26 return 0;
27 }








//使用main函数的第三个参数
4 int main(int argc, char* argv[], char* env[])
5 {
6 int cnt = 0;
7 for(; env[cnt]; cnt++)
8 {
9 printf("env[%d]->%s\n", cnt, env[cnt]);
10 }
11 return 0;
12 }int main()
15 {
16 extern char** environ;
17 int cnt = 0;
18 for (; environ[cnt]; cnt++)
19 {
20 printf("environ[%d]->%s\n", cnt, environ[cnt]);
21 }
22 return 0;
23 }



set



#include<stdlib.h>
32 int main()
33 {
34 printf("A:%s, B:%s\n",getenv("A"), getenv("B"));
35 return 0;
36 }
今天的分享就到此结束啦,如果对读者朋友们有所帮助的话,可否留下宝贵的三连呢~~ 让我们共同努力, 一起走下去!