如何在读取模拟输入值时捕获错误

时间:2017-02-03 01:35:42

标签: c popen pclose

我目前正在努力让我的代码更安全,更有条理。到目前为止,当我想读取模拟输入值时,我使用以下函数,它可以正常工作:

FILE *fp = popen("cat /sys/bus/iio/devices/iio\\:device0/in_value_raw", "r");
char *ln = NULL;
size_t len = 0;

while (getline(&ln, &len, fp) != -1)
    fputs(ln, stdout);
    free(ln);
    pclose(fp);
int result = atoi(ln);

但是,到目前为止,我没有办法获取错误消息或检查值是否已正确读取...有没有办法改变它? 我看过一些关于" pipe streaming"的文章,但由于它们总是关于执行文件,我不知道,如果我在正确的道路上......

如果你能告诉我,如何最好地解决这个问题会有很大的帮助。

感谢您的时间!

0 个答案:

没有答案