stm32 串口格式化打印字符串 函數(shù)封裝

#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");

}

---------------------

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容