我想将system("stat -f %g /dev/console")
给出的数字放在一个变量中(使用C在Xcode中工作)。如何最好地实现这一目标?
答案 0 :(得分:3)
我宁愿使用stat
函数:
struct stat file_details;
stat("/dev/console", &file_details);
printf("group id : %ld\n", (long) file_details.st_gid);
答案 1 :(得分:0)
int variable;
variable = system("stat-f %g /dev/console");
答案 2 :(得分:0)
如果要捕获命令的输出,则需要使用popen
而不是system
。 E.g。
#include <stdio.h>
int main(void)
{
int id = -1;
FILE *fp = popen("stat -f %g /dev/console", "r");
if (fp != NULL)
{
fscanf(fp, "%d", &id);
pclose(fp);
}
printf("id = %d\n", id);
return 0;
}
答案 3 :(得分:-1)
#include<stdlib.h>
...
int return_value = system("stat-f %g /dev/console");