我目前正在从事一个需要我在 C 代码期间调用 Linux 命令的项目。我在其他来源上发现可以使用 system() 命令执行此操作,然后将 Linux shell 的值保存到我的 C 程序中。
例如,我需要将目录更改为
root:/sys/bus/iio/devices/iio:device1>
然后输入
cat in_voltage0_hardwaregain
作为命令。这应该将双精度输出到 C 中。
所以我的示例代码是:
#include <stdio.h>
#include <stdlib.h>
double main() {
char directory[] = "cd /sys/bus/iio/devices/iio:device1>";
char command[] = "cat in_voltage0_hardwaregain";
double output;
system(directory);
output = system(command);
return (0);
}
我知道这可能不是最好的方法,因此非常感谢任何信息。