MFC 中的 “printf” 函数

怀念C语言的我,MFC没法使用的C语言printf函数,于是:

int MFCprintf(const char* m_data, ...)
{
CString str;
char printf_buf[1024];
va_list args;
/*
args为定义的一个指向可变参数的变量,va_list以及下边要用到的va_start,va_end都是是在定义
可变参数函数中必须要用到宏, 在stdarg.h头文件中定义
*/
int printed;

va_start(args, m_data);//初始化args的函数,使其指向可变参数的第一个参数,fmt是可变参数的前
//一个参数
printed = vsprintf(printf_buf, m_data, args);
va_end(args);//结束可变参数的获取

str=printf_buf;
int nCount = m_print.GetLineCount(); //获取行数,包括回车行
int nLastLine = m_print.LineIndex( nCount - 1 ); //获取字符数,许可多行
m_print.SetSel( nLastLine + 1, nLastLine + 2 ); //设定光标选中的区域
m_print.ReplaceSel(str); //文字替换
return printed;
}

  

转载于:https://www.cnblogs.com/swack/p/3948783.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值