va_start,va_end,va_list等是用来做什么的? 如题!我是新手,不要讲的太深奥,先谢了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 同意楼上的...楼主可以这样想:怎么实现像printf那样的可变参数的函数呢?知道这个问题的答案后就知道va_start,va_end,va_list等是用来做什么的了 void CMyString::Format(const char* pchFormat, ...){ va_list argList; va_start(argList, pchFormat); char * pchBuffer = new char[nMaxLen]; int nWriteSize = vsprintf(pchBuffer, pchFormat, argList); if (nWriteSize >= 0) { // m_string = pchBuffer; *this = pchBuffer; } delete []pchBuffer; pchBuffer = NULL; va_end(argList);} 各位牛人帮我看看这个程序,我是菜鸟啊! C#中长string想多行显示 ICOpen函数返回错误问题! _CtrIsValidHeapPointer 怪异:组合框不能正常显示的问题。 谁有可以在带窗口的ActiveX中使用的图形按钮类 我是菜鸟,请教高手 请问静态文本怎样设置背景颜色? 马上给分! 初学者求教:返回一个组件的实例!!!(急,在线求教) VC如何调用VB写的DLL文件 在MDI中如何创建工具栏 问一个SendMessage问题
楼主可以这样想:怎么实现像printf那样的可变参数的函数呢?
知道这个问题的答案后就知道va_start,va_end,va_list等是用来做什么的了
{
va_list argList;
va_start(argList, pchFormat); char * pchBuffer = new char[nMaxLen];
int nWriteSize = vsprintf(pchBuffer, pchFormat, argList);
if (nWriteSize >= 0)
{
// m_string = pchBuffer;
*this = pchBuffer;
}
delete []pchBuffer;
pchBuffer = NULL;
va_end(argList);
}