typedef unsigned char uBit8;
typedef char Bit8;
typedef unsigned short uBit16;
typedef short Bit16;
typedef unsigned long uBit32;
typedef long Bit32;
typedef long long Bit64;
typedef float float32;
typedef double double64;
CString 转 bool : Bool = _ttol(CString);
CString 转 char *:
//获取转换所需的目标缓存大小
DWORD dBufSize = WideCharToMultiByte(CP_ACP, 0, strFilePath,-1, NULL,0,NULL, NULL);
//分配目标缓存
char* cFunParam1 = new char[dBufSize+1];
memset(cFunParam1, 0, dBufSize+1);
//转换
int nRet=WideCharToMultiByte(CP_ACP, 0, strFilePath.GetBuffer(),-1, cFunParam1, dBufSize+1, NULL, NULL);
cFunParam1[dBufSize] = '\0';
//函数调用
iTempNumber = UIN_LoadUserData(iFunParam1,(unsigned char *)cFunParam1,iFunParam3);
char * 转CString:
typedef union sv_parm_data{shortsData; unsigned shortnData;unsigned longulData;longlData;float fData;}SV_PARM_DATA;
ulRet = UIN_GetSvParm(m_arSvDevCtrlData[m_iCurSVNo].uDevNo, pDisItem[iItemIndex].nNo, (unsigned char*)&m_pSvParmData[m_iCurSVNo][iItemIndex]);//结构体数组;
//刷新伺服数据
iItemIndex = iStartIndex;
for (iRow=1; iRow<=iRestCount; iRow++, iItemIndex++)
{
switch(pDisItem[iItemIndex].uType)
{
case DATA_TYPE_S: //short
strText.Format(_T("%d"), m_pSvParmData[m_iCurSVNo][iItemIndex].sData);
break;
case DATA_TYPE_US: //unsigned short
strText.Format(_T("%d"),m_pSvParmData[m_iCurSVNo][iItemIndex].nData);
break;
case DATA_TYPE_L: //long
strText.Format(_T("%d") ,m_pSvParmData[m_iCurSVNo][iItemIndex].lData);
break;
case DATA_TYPE_UL: //unsigned long
strText.Format(_T("%d") ,m_pSvParmData[m_iCurSVNo][iItemIndex].ulData);
break;
case DATA_TYPE_F: //float
case DATA_TYPE_D: //double
strText.Format(_T("%.3f") ,m_pSvParmData[m_iCurSVNo][iItemIndex].fData);
break;
default:break;
}
m_ctrlParamList.SetItemText(iRow, 3, strText);
}
uBit16转CString: strPar[1].Format(_T("%d"), usData);
//CString转uBit32-----------------------------------//
pAxisNo[1] = (uBit32)_ttoi(strdFunParam8);
pEndPos[1] = ( Bit32)_ttoi(strdFunParam9);
CString 转 uBit32 :
char cTData[40] = {0};
WideCharToMultiByte(CP_ACP, NULL, CString, -1, cTData, 40, NULL, NULL);
uBit32 = atol(cTData);
float32 转CString: CString.Format(_T("%f"),float32);
typedef char Bit8;
typedef unsigned short uBit16;
typedef short Bit16;
typedef unsigned long uBit32;
typedef long Bit32;
typedef long long Bit64;
typedef float float32;
typedef double double64;
CString 转 bool : Bool = _ttol(CString);
CString 转 char *:
//获取转换所需的目标缓存大小
DWORD dBufSize = WideCharToMultiByte(CP_ACP, 0, strFilePath,-1, NULL,0,NULL, NULL);
//分配目标缓存
char* cFunParam1 = new char[dBufSize+1];
memset(cFunParam1, 0, dBufSize+1);
//转换
int nRet=WideCharToMultiByte(CP_ACP, 0, strFilePath.GetBuffer(),-1, cFunParam1, dBufSize+1, NULL, NULL);
cFunParam1[dBufSize] = '\0';
//函数调用
iTempNumber = UIN_LoadUserData(iFunParam1,(unsigned char *)cFunParam1,iFunParam3);
char * 转CString:
typedef union sv_parm_data{shortsData; unsigned shortnData;unsigned longulData;longlData;float fData;}SV_PARM_DATA;
ulRet = UIN_GetSvParm(m_arSvDevCtrlData[m_iCurSVNo].uDevNo, pDisItem[iItemIndex].nNo, (unsigned char*)&m_pSvParmData[m_iCurSVNo][iItemIndex]);//结构体数组;
//刷新伺服数据
iItemIndex = iStartIndex;
for (iRow=1; iRow<=iRestCount; iRow++, iItemIndex++)
{
switch(pDisItem[iItemIndex].uType)
{
case DATA_TYPE_S: //short
strText.Format(_T("%d"), m_pSvParmData[m_iCurSVNo][iItemIndex].sData);
break;
case DATA_TYPE_US: //unsigned short
strText.Format(_T("%d"),m_pSvParmData[m_iCurSVNo][iItemIndex].nData);
break;
case DATA_TYPE_L: //long
strText.Format(_T("%d") ,m_pSvParmData[m_iCurSVNo][iItemIndex].lData);
break;
case DATA_TYPE_UL: //unsigned long
strText.Format(_T("%d") ,m_pSvParmData[m_iCurSVNo][iItemIndex].ulData);
break;
case DATA_TYPE_F: //float
case DATA_TYPE_D: //double
strText.Format(_T("%.3f") ,m_pSvParmData[m_iCurSVNo][iItemIndex].fData);
break;
default:break;
}
m_ctrlParamList.SetItemText(iRow, 3, strText);
}
uBit16转CString: strPar[1].Format(_T("%d"), usData);
//CString转uBit32-----------------------------------//
pAxisNo[1] = (uBit32)_ttoi(strdFunParam8);
pEndPos[1] = ( Bit32)_ttoi(strdFunParam9);
CString 转 uBit32 :
char cTData[40] = {0};
WideCharToMultiByte(CP_ACP, NULL, CString, -1, cTData, 40, NULL, NULL);
uBit32 = atol(cTData);
float32 转CString: CString.Format(_T("%f"),float32);