格式化字符串 StringCbPrintf 函数 (strsafe.h):
STRSAFEAPI StringCbPrintf(
[out] STRSAFE_LPSTR pszDest,//目的缓冲区 LPSTR指针或者数组
[in] size_t cbDest,//目的缓冲区大小
[in] STRSAFE_LPCSTR pszFormat,//格式 例如: TEXT("%d")
[in] 变量 ,// 数字1
...
);
例如:
int const arraysize = 30;
TCHAR pszDest[arraysize];
size_t cbDest = arraysize * sizeof(TCHAR);
LPCTSTR pszFormat = TEXT("%s %d + %d = %d.");
TCHAR* pszTxt = TEXT("The answer is");
HRESULT hr = StringCbPrintf(pszDest, cbDest, pszFormat, pszTxt, 1, 2, 3);
// The resultant string at pszDest is "The answer is 1 + 2 = 3."
格式化字符串 _rprintf
获取字符个数:strlen、wcslen、_tcslen
size_t strlen(const char* str); // char类型字符串指针
size_t wcslen(const wchar_t* str); // wchar_t类型字符串指针
返回字符个数,不是字节数,返回值不包括字符串结尾的0
strlen和wcslen这两个函数的通用版本为_tcslen,在tchar.h头文件中有如下定义:
#ifdef _UNICODE
#define _tcslen wcslen
#else
#define _tcslen strlen
#endif