变参标准函数的重新封装,如printf
方法一:
#include <stdio.h> #include <stdarg.h> void my_trace(const char *cmd, ...) { printf("%s %s ", __DATE__, __TIME__); va_list args; //定义一个va_list类型的变量,用来储存单个参数 va_start(args,cmd); //使args指向可变参数的第一个参数 vprintf(cmd,args); //必须用vprintf等带V的 va_end(args); //结束可变参数的获取 }
方法二:
#define DBG_PRINT (printf("%s:%u %s:%s:\t", __FILE__, __LINE__, __DATE__, __TIME__), printf)
原文:https://blog.csdn.net/coder_weisong/article/details/10285291
转载于:https://www.cnblogs.com/Ph-one/p/10418871.html
变参标准函数的重新封装,如printf相关推荐
- 变参函数相关介绍和封装
实现可变参数函数的二次封装,如printf.viPrintf等 问题描述:visa接口viPrintf.viScanf.viQueryf等具有可变参数的封装,每条通信会发送多读取指令,现需要对发送与接 ...
- Java和C++在细节上的差异(转)
Java的基本程序结构.关键字.操作符都和C/C++非常相似,以下为主要的几点区别: 一.基本程序设计结构: Java的基本程序结构.关键字.操作符都和C/C++非常相似,以下为主要的几点区别: 1. ...
- ① ESP8266 开发学习笔记_By_GYC 【更新 ets_printf 函数 使ESP_IDF 能够支持浮点数打印】
① ESP8266 开发学习笔记_By_GYC [更新 ets_printf 函数 使ESP_IDF 能够支持浮点数打印] 在我们日常的开发过程中,经常使用到的一个功能就是串口打印功能.在ESP826 ...
- Java核心技术一 上读后感
Java核心技术一 上 第一章 Java程序设计概念 1.1Java程序设计平台 设计平台包含广泛,有很多数据库可以用来被调用,更体现在是一种跨平台的语言,提供环境和应用的数据库 1.2 Java白皮 ...
- 一些宏的应用,包括NSLog
创建一个UIViewController,免得类名与资源名写错 #define CREATCONTROLLER(ClassName) [[ClassName alloc] initWithNib ...
- python中可变参数args_python 可变参数 *args, **kwds
关键字可变参数-字典 #!/usr/bin/env python# -*- coding: UTF-8 -*-def dictVarArgs(arg1, arg2='defaultB', **theR ...
- ## __VA_ARGS__ ... 宏和可变参数
在GNU C中,宏可以接受可变数目的参数,就象函数一样,例如: 1 2 #define pr_debug(fmt,arg...) \ printk(KERN_DEBUG fmt, ##arg) 用可变 ...
- 【GCC】gcc警告选项汇总--编辑中|gcc编译选项
目录 前言 请求或取消警告选项 GCC编译选项 参考原文:https://blog.csdn.net/qq_17308321/article/details/79979514 前言 警告:不是错误的, ...
- gcc警告选项汇总 转
---------------- 原文链接:https://blog.csdn.net/qq_17308321/article/details/79979514 参考资料:https://gcc.gn ...
最新文章
- Ubuntu 系统输入法设置
- .编写一个函数实现n^k,使用递归实现
- PHP的var_dump(‘1‘==‘1e0‘)的结果为true
- 2021,我在枯燥乏味中寻找坚持下去的理由
- POI(java 操作excel,word等)编程
- innodb事务锁的一些常见数据结构
- Spring扩展之BeanPostProcessor接口
- 苹果系统模拟器_全球首款 iOS 模拟器来袭:免费得一台苹果手机!
- python多线程爬取音标
- 公云(3322)动态域名更新API
- Flask+SQLAlchemy+graphene+docker示例
- 数组基础与字符串(尚学堂视频学习总结_004)
- 永恒python+6_永恒中心 – Eternal Center
- 超体分享 | 迭代思维:你感觉原地踏步,只是因为你想一步到位
- 判断计算机硬件和网络故障,计算机硬件故障的识别与处理
- 总结用过的几个视频同步分离电路--LM1881
- CAD文件转换为SVG文件
- 交换机vlan配置实训心得_交换机基本配置及VLAN配置实验报告
- 我辞职了!“没有Python编程经验的我,连简历都不敢投”
- 欧姆龙突破传统工艺限制,实现成倍的性能优化