char szbuf[100];
szbuf="123456789";
CString szRBuf,sztmp;
for(int i=0;i<7;i++)
{
sztmp.Format(_T("%X"),szbuf[i];);//转化成十六进制
szRBuf+=szTmp;
}
为什么szRBuf 老是出错,转化的都是第一个数字
应该怎么解决
szbuf="123456789";
CString szRBuf,sztmp;
for(int i=0;i<7;i++)
{
sztmp.Format(_T("%X"),szbuf[i];);//转化成十六进制
szRBuf+=szTmp;
}
为什么szRBuf 老是出错,转化的都是第一个数字
应该怎么解决
解决方案 »
- opencv关于视频中画矩形的问题???求高手
- 关于UpdateData的用法
- 正在做一个聊天软件,不知道怎样实现群聊功能?
- ЖЖ请问个问题,为什么我的程序现在在Debug模式下面不能调试了呢,提示说断点无效,程序将定位于开始处了,然后根本就不能调试了??Ж
- 如何最方便的删掉整个工程中的所有注释?
- 再问VC基础问题,抓狂ing……API调用无效……
- 请教一个sdk中,子窗口退出的问题?
- CJ60Lib库怎么用?能不能给我详细的文档!等待……给分
- 编译出错,请大侠指教
- 一个数据库连接的问题
- ICaptureGraphBuilder* IGraphBuilder* 释放指针出错
- 有关clistctrl的列头的问题
char szbuf[100] = "123456789";
CString szRBuf,szTmp;
for(int i=0;i<7;i++)
{
szTmp.Format(_T("%X"),szbuf[i]);//转化成十六进制
szRBuf+=szTmp;
}
这样写没有什么问题
watch中显示:{"31323334353637"}
VS是unicode
6.0是多字节
char -->TCHAR
CString szRBuf,sztmp;
for(int i=0;i<7;i++)
{
sztmp.Format(_T("%X"),szbuf[i]);//转化成十六进制
szRBuf+=sztmp;
} SetWindowText(szRBuf); //为了直观的看看,没用调试
在VS2005上测试,通过符合要求