当我执行程序./test -debug 7 -m播放器时,我使用C语言如何获取-m -debug的参数值?linux如何用pid获取进程参数?
我曾尝试:
char* name = (char*)calloc(1024,sizeof(char));
if(name){
sprintf(name, "/proc/%d/cmdline",pid);
FILE* f = fopen(name,"r");
if(f){
size_t size;
size = fread(name, sizeof(char), 1024, f);
if(size>0){
if('\n'==name[size-1])
name[size-1]='\0';
}
fclose(f);
}
}
但它只返回process.exec的名字 “xargs的-0
2016-03-07
lyric
+2
'getopt'可以帮助你http://www.gnu.org/software/libc/manual/html_node/Example-of-Getopt.html –
+0
对不起,我想进入另一个进程,而不是进程的主要方法。 –
+0
请问您可以提供一些关于您的问题的更多细节。你是否试图在程序y中传递给程序x的参数? –