当前位置: 技术问答>linux和unix
Linux编程:有关read()函数的问题
来源: 互联网 发布时间:2015-07-24
本文导语: 在串口编程的时候,要从终端读取数据出现了问题。 第一次调用read()的时候没问题,但第二次调用的时候,为什么buffer里自动有一个“n”,我没有读,就自动产生,并自动处理。接下来一次调用就没问题了,但再...
在串口编程的时候,要从终端读取数据出现了问题。
第一次调用read()的时候没问题,但第二次调用的时候,为什么buffer里自动有一个“n”,我没有读,就自动产生,并自动处理。接下来一次调用就没问题了,但再接下去就又出现了。就是奇数调用正常,偶数调用就是自动产生调用。
并且在第一次调用完后我buffer,已经清零了。请各位请教。
第一次调用read()的时候没问题,但第二次调用的时候,为什么buffer里自动有一个“n”,我没有读,就自动产生,并自动处理。接下来一次调用就没问题了,但再接下去就又出现了。就是奇数调用正常,偶数调用就是自动产生调用。
并且在第一次调用完后我buffer,已经清零了。请各位请教。
|
??? 是不是没把终端上输入的回车算进去?
|
你是从那里读数据呢?
|
str[strlen(buff)-1]=0?
|
首先你确认在每次读之前接受缓冲都清零了?
再者,你是不是从终端的命令行把'n'读进来了?
再者,你是不是从终端的命令行把'n'读进来了?