void *memset(void *str, int c, size_t n)
参数:
str – 指向要填充的内存块。
c – 要被设置的值。该值以 int 形式传递,但是函数在填充内存块时是使用该值的无符号字符形式。
n – 要被设置为该值的字符数。
解释:复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符。
作用:是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法
头文件:C中#include
,C++中#include
看着介绍其实函数作用非常简单,就是用于初始化,但是需要注意的是memset赋值的时候是按字节赋值,是将参数化成二进制之后填入一个字节。
案例
void Task_USART1_ACK(void)
{
if(Uart_ReciveData_flag){
get_rx_data();
memset(USART1_RX_BUF, 0, sizeof (USART1_RX_BUF));
USART1_RX_STA = 0;
Uart_ReciveData_flag = 0;
}
}