f=fopen("/dev/ttyUSB0","r")
char c;
c=getc(f);
while(c!=EOF) {
c=getc(f);
}
在上面的代码中,当我拔下设备时,循环永远不会在 beaglebone ubuntu 上中断,这是 arm 架构。上面的代码在我的 i386 ubuntu 桌面上运行。
- 编辑 -
它非常奇怪!迈克的int c; 没用。观看c给定,c=255但即使我更改c!=EOF为c!=255循环也不会中断!试了一个小时后我很沮丧!!!
- 编辑 -
我试过了fstream fin("/dev/ttyUSB0", fstream::in);。当我拔下输入串行设备时fin>>c永远不会返回并且 CPU 使用率为 100%!我希望它是一个错误!