|
. I' B' x' j; @' d char buffer[256]; int Ac_pf(char *format,...)1 ~/ s9 L: @7 i# J& c9 N! r { va_list aptr; int ret;6 F2 ?2 i6 p2 Y) E* z va_start(aptr,format); ret = vsprintf(buffer, format, aptr); va_end(aptr); HAL_UART_Transmit(&huart3,(uint8_t*)buffer,strlen(buffer),0xffff);$ o$ C/ c' r% Y, S# } return(ret);% b) g9 \9 i E2 ]4 W5 E } char buffer1[256]; int Ac_pf1(char *format,...) {9 O! W$ O" ^* o% q& u/ B- d va_list aptr; int ret; va_start(aptr,format);) u9 R6 Y! o O& a7 V+ u# T2 m ret = vsprintf(buffer1, format, aptr); va_end(aptr);. L0 Z7 V( W; l; x2 d( H: {0 E HAL_UART_Transmit(&huart2,(uint8_t*)buffer1,strlen(buffer1),0xffff);3 f! y$ s+ x; `* m! {+ I return(ret); }* Q, ~8 b$ u+ _9 k# x$ g8 L 2 G, o) z+ J& v' C: i* \ int main() { Ac_pf("huart3 %s","www.stmcu.org.cn");6 S* |+ z+ b- I/ J# E Ac_pf1("huart2 %s","www.stmcu.org.cn"); 3 w& t1 {' r% I T# }/ G }. @. \( C; G% J+ D$ S& q3 V 没有中文解释,自己猜功能 + m) `4 G/ L" q& x# c A/ F |
微信公众号
手机版
不用搞這樣麻煩,這樣定義,用法跟printf一模一樣。
你猜错了,楼主的意思很明显,不用整天重映射这个那个,直接这样用就可以printf了~
评分
查看全部评分
不需要 format参数 的吗
动态分配,最灵活。