本帖最后由 hebeijiang 于 2013-1-29 09:38 编辑
因项目用到unicode的字符打印,
使用vswprintf来处理,该如何确定 size_t 的值:
int vswprintf(wchar_t * __restrict /*s*/, size_t /*n*/,
const wchar_t * __restrict /*format*/, __va_list /*arg*/) __attribute__((__nonnull__(3)));
在以前可以这样写:
void Printf(char *fmt,...)
{
va_list ap;
char string[255];
va_start(ap,fmt);
vsprintf(string,fmt,ap);
Uart_PrintStr0(string);
va_end(ap);
}
现在改为:
void wPrintf(wchar *fmt,...)
{
va_list ap;
wchar string[255];
va_start(ap, fmt);
vswprintf(string, size_t, fmt, ap); //这的 size_t 我要如何获得?
Uart_PrintStr0(string);
va_end(ap);
}
|