首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

printf 传参有关问题

2012-05-07 
printf 传参问题想实现一个接口,就是将printf的参数传入到另外一个函数中,在另外的函数中进行打印例如:我

printf 传参问题
想实现一个接口,就是将printf的参数传入到另外一个函数中,在另外的函数中进行打印
例如:我想打印printf("hello %d", a); 我想将 "hell %d" 和 a传入到一个接口print()里面,然后在print里面封装printf,print用不定参数传参print(const char *format),可是这样就存在一个问题,如何将传给print的不定参数传给printf呢?请教了

[解决办法]
1 借助vprintf 实现,vprintf系列格式化字符串的函数由系统提供,
可用于编程人员封装自己的I/O函数。

C/C++ code
#include <stdio.h>#include <stdarg.h>int print(const char * format, ...){    va_list arg_ptr;    va_start(arg_ptr, format);    int nBytes = vprintf(format, arg_ptr);    va_end(arg_ptr);    return nBytes;}int main(void){    char *p = "hello c! \n";    print("%s", p);    return 0;} 

热点排行