void Uart_Printf(char *fmt,...)

void Uart_Printf(char *fmt,...) //...表示可变参数(多个可变参数组成一
个列表,后面有专门的指针指向他),不限定个数和类型,
{
va_list ap;//初始化指向可变参数列表的指针
char string[256];

va_start(ap,fmt);//将第一个可变参数的地址付给ap,即ap指向可变参数列
表的开始
vsprintf(string,fmt,ap);//将参数fmt、ap指向的可变参数一起转换成格式
化字符串,放string数组中,其作用同
sprintf(),只是参数类型不同
Uart_SendString(string); //把格式化字符串从开发板串口送出去
va_end(ap); //ap付值为0,没什么实际用处,主要是为程序健壮性
}

你可能感兴趣的:(void Uart_Printf(char *fmt,...))