这个函数来源于网上流传很广的yafei Qt串口教程中所使用的Posix_QextSerialPort类。
从字面上,很容易知道这个函数的作用,返回
串口中有多少可供读取的字节数。
其返回值有三种状态。
(1)返回值 > 0 : 可供读取的字节数。
(2)返回值 = 0 : 串口尚未打开
(3)返回值 = -1 : 发生
错误需要值得注意的是:返回值 = 0时,并不是说串口中无
数据可读,而是串口尚未打开!
那么如何判断串口无数据可读的情况呢?解决办法如下:
当返回值 = -1时,使用lastError函数获取错误值,如果错误值为E_PORT_TIMEOUT(此值为4),则当前串口中无数据可读。
另外注意的是bytesAvailable返回的是qint64,不是int。
[ 此帖被我要下载代码在2011-02-15 11:30重新编辑 ]