如何将64位整型转换为宽字符串

今日遇到的一个问题,给出的解决方案如下: 

 

1. 首先,用sprintf转换为char * (安全考虑,用springf_s或者是snprintf)

2. 用MultiByteToWideChar将转换后的字符串转换为宽字符(unicode)

 

注意的是,对于非 int64, 可以用wsprintf()直接将数据格式化为宽字符集,但是wsprintf不支持64位的整型。

 

代码sample: 

 

char buff[1024];

SecureZeroMemory(buff, sizeof(buff));

 

 

sprintf(buff, format, source);

 

wchar_t dest[1024];

MultiByteToWideChar(CP_ACP,0,buff,-1,dest,1024);

 

如果想了解更多的函数信息,请参见msdn 2008.

 

 

 

 

你可能感兴趣的:(如何将64位整型转换为宽字符串)