我在“打开”方面遇到问题。即使没有名为 ttyACM3 的设备,它也不会返回错误。它总是打印“无错误”。
可能是什么问题?
fd = open("/dev/ttyACM3", O_RDWR);
if(fd)
{
printf("no error");
}
else
{
printf("error");
}
最佳答案
这一行:
if(fd)
对于 fd == -1
计算结果为 true,这就是 open
返回错误的方式。 open
出错时返回 -1
,而不是 0
。
以后更仔细地阅读文档:)
此外,如果您想知道的话,if (fd)
对于负数计算结果为 true。
关于Linux 开放问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46377600/