#include <iostream>
#include <windows.h>
//**********************************************
#include <stdarg.h>
#include <stdio.h>
int uart_printf(void* UartHandle,char* buf,size_t bufLen, const char *fmt, ...)
{
va_list arg;
int cnt;
#if 1
va_start(arg, fmt);
cnt = vsnprintf(buf, bufLen, fmt, arg);
//生成的字符串的长度至多为n-1,为额外的终止空字符留下空间。
va_end(arg);
#else
va_start(arg, fmt);
cnt = vsprintf(buf, fmt, arg);
va_end(arg);
#endif
printf("%s", buf); //UART0_SendBuf(buffer);
return cnt;
}
//**********************************************
int main()
{
std::cout << "Hello World!\n";
#define BUF_LEN 3
char Buf[BUF_LEN] = { 0 };
int Res = 0;
Res=uart_printf(NULL,Buf, BUF_LEN, "A=%d\r\n", 1);
std::cout <<'['<< Buf <<']'<< std::endl;
printf("[%s]Res==%d\r\n\r\n", Buf,Res);
printf("\r\n\r\n");
system("pause");
}
---------------------
网友评论