类似printf功能的函数

   日期:2020-09-07     浏览:92    评论:0    
核心提示:直接贴代码以及解释如下:#include #include #define size 256char buffer[size]; int uprintf(const char *f, ...){ int i = 0; va_list arg_p.
  • 直接贴代码以及解释如下:

#include <stdio.h> 
#include <stdarg.h> 

#define size 256
char buffer[size];	
int uprintf(const char *f, ...)
{
	int i = 0;
	va_list arg_ptr;	

	
	va_start(arg_ptr, f);	
    
	vsnprintf(buffer, size, f, arg_ptr);	
// vsprintf(buffer, f, arg_ptr);
    va_end(arg_ptr); 	

    
	while(buffer[i]) 
	{
		transmit_char(buffer[i]);	
		i++;
	}
	return i;
}


int var = 10;
uprintf("%d", var);
  • 生成代码大小问题

实际应用中发现,编译未进行优化,实际生成的代码大小增大8~9k。建议调试时候使用。

可定义个宏来控制开关,参考代码如下:


#define DEBUG_UPRINT 1 

int uprintf(const char *f, ...)
{
    #if DEBUG_UPRINT
    
    
    
    #else
    	return 0;
    #endif
}


  • 其他

    编写或是解释难免有错,欢迎指正。
    如有侵权,联系我删除,谢谢!!!

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服