发表一个格式化字符串的函数,类似于wsprintf的
来源:互联网 发布:你知我情深txt微盘 编辑:程序博客网 时间:2024/06/06 10:07
我们知道在格式化字符串的函数中如wsprintf,以及printf,还有MFC的CString类的Format函数中,会用到不定参数,但不定参数的使用比较麻烦,现在我做了一个格式化字符串的函数,虽然这个函数用到了不定参数,但不用我们分析不定参数,还是比较方便的,大家可以看看.
/*
函 数 名:FormatString
函数功能:用于ASCII码的格式化字符串,类似于wsprintf函数
返 回 值:返回szRet内字符的个数,返回-1表明失败
参 数 1:返回格式化后的字串,须指定长度为512
参 数 2:指定格式
说 明:在函数内说明了不定参数的用法
示 例:
char sz[512] = {0};
FormatString(sz, "hello = %d//n", 212);
*/
int FormatString(char *szRet, const char *lpszFormat, ...)
{
if(szRet == NULL)
{
return -1;
}
va_list args;
va_start(args, lpszFormat);
int nBuf;
char szBuffer[512];
nBuf = _vsnprintf(szBuffer, 512, lpszFormat, args);
strcpy(szRet, szBuffer);
va_end(args);
return nBuf;
}
/*
函 数 名:FormatString
函数功能:用于UNICODE码的格式化字符串,类似于wsprintf函数
返 回 值:返回wcsRet内字符的个数,返回-1表明失败
参 数 1:返回格式化后的字串,须指定长度为512
参 数 2:指定格式
说 明:在函数内说明了不定参数的用法
示 例:
wchar_t wcs[512] = {0};
int n = FormatString(wcs, L"hello hahah = %d, %x", 212, 100);
*/
int FormatString(wchar_t *wcsRet, const wchar_t *lpwcsFormat, ...)
{
if(wcsRet == NULL)
{
return -1;
}
va_list args;
va_start(args, lpwcsFormat);
int nBuf;
wchar_t wcsBuffer[512];
nBuf = _vsnwprintf(wcsBuffer, 512, lpwcsFormat, args);
wcscpy(wcsRet, wcsBuffer);
va_end(args);
return nBuf;
}
- 发表一个格式化字符串的函数,类似于wsprintf的
- WSPRINTF格式化字符串函数
- 用wsprintf格式化字符串
- 格式化字符串WSPRINTF
- 用wsprintf格式化字符串 .
- wsprintf 格式化字符串
- 一个Oracle格式化字符串的函数
- 分享一个类似于MFC的字符串类
- wsprintf()函数与输出格式化
- wsprintf()函数与输出格式化
- wsprintf()函数与输出格式化
- 发表一款SQL字符串的简繁体函数
- 一个功能类似于dup2() 的函数
- 一个功能更强大的字符串格式化函数……
- 格式化字符串的一个实例
- 字符串分割函数:类似于VB的split()函数
- 自己写的一个功能类似于strtok函数的函数
- string的字符串替换函数,类似于CString的Replace
- 简历
- poj 2002 Squares
- c语言图形问题
- 跪求ASP空间
- Ubuntu中SCIM输入法不能随机启动的问题
- 发表一个格式化字符串的函数,类似于wsprintf的
- JDK1.6 tomcat 6.0环境变量配置
- 一些软件设计的原则
- [006] 百度地图移动版API终于发布了(Android)
- QT QString转Char *
- java中String类详解(享元模式思考)
- Unicode字符与ASCII码字符的相互转化
- C++初学者指南 第十一篇(12)
- Net框架和C#概述