[英]c++ save formatted dword to str variable
我是C ++的新手,請原諒我的無知。
_tprintf(_T("%4.4X-%4.4X"), HIWORD(dwVolumeSerialNumber), LOWORD(dwVolumeSerialNumber))
這打印出來例如:48AE-2022。
我需要將它存儲在str var中以將其寫入文本文件。 我嘗試了to_string(),但它存儲的數字9,我猜測的是字符數。
TCHAR szBuff[100];
_stprintf_s(szBuff, sizeof(szBuff)/sizeof(TCHAR), _T("%4.4X-%4.4X"), HIWORD(dwVolumeSerialNumber), LOWORD(dwVolumeSerialNumber));
或者你也可以做C ++風格:
#include <sstream>
#include <string>
std::stringstream ss;
ss<<std::hex<<std::setfill('0')<<std::setw(4)<<HIWORD(dwVolumeSerialNumber)<<"-"<<std::setw(4)<<LOWORD(dwVolumeSerialNumber));
std::string sRes = ss.str();
在這種情況下,您應該使用std::string
或std::wstring
具體取決於您的項目unicode設置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.