使用C语言从缓冲区读取数据

时间:2018-12-01 00:56:36

标签: c

data->缓冲区的起始地址,用于存储接收到的数据[此处,接收到的数据为你好]

length->缓冲区的大小

readfunction(uint8_t * data, size_t length) 

int main()
{
uint8_t ch;
readfunction(&ch , 1);
}   

当我执行程序时,ch正在获取第一个字节的“数据” [即 h ]

并且我无法读取数据中的所有字符。我应该如何以这样的方式增加ch呢?它将给我所有的值[你好]

我尝试增加缓冲区的大小,但未成功。有什么方法吗? 非常感谢。

1 个答案:

答案 0 :(得分:0)

您将需要一个数组。不知道您尝试增加缓冲区的大小是什么,但是如果我正确解释了readfunction,您将需要以下内容:

uint8_t ch[6];
readfunction(ch , 6);

请注意,分配的缓冲区空间比要读取的字符数大一个,以说明C字符串的空终止符。 还要注意,readfunction的第一个参数现在是ch而不是&ch,因为数组本质上是指向其第一个元素的指针(您也可以传递&ch[0]

相关问题