65,211
社区成员
发帖
与我相关
我的任务
分享
char strAttr[128] = {0};
CS_BaseCreature * pCreature = new CS_BaseCreature;
long iATTR = pCreature->GetAttr(attr);
sprintf(strAttr, _T("%d"), iATTR); //调试的时候,strAttr正常输出,比如是"0"
m_NpcList.SetItemText(0, 2, strAttr); //显示出来的却是乱码.......
delete pCreature;
return strAttr;
char * CClientNpcDlg::AttrLongToString(const int attr)
{
char * strAttr = new char[128]; //这样么?但最后不是要delete strAttr, 还怎么返回呢?
CS_BaseCreature * pCreature = new CS_BaseCreature;
TCHAR strTemp[128] = {0};
long iATTR = pCreature->GetAttr(attr);
sprintf(strTemp, "%d", iATTR);
//tsprintf(strTemp, _T("%d"), iATTR);
strAttr = strTemp;
delete pCreature;
return strAttr;
}
char * CClientNpcDlg::AttrLongToString(const int attr)
{
char * strAttr = "";
TCHAR strTemp[128] = {0};
CS_BaseCreature * pCreature = new CS_BaseCreature;
long iATTR = pCreature->GetAttr(attr);
tsprintf(strTemp, _T("%d"), iATTR); //tsprintf未找到这个标识符!
strAttr = strTemp;
delete pCreature;
return strAttr; //这样返回对么?
}