Here is a few data conversion with small examples :-
Decimal Conversions
Decimal To Hex
Collapse | Copy Code
// Use _itoa( ) function and set radix to 16. char hexstring[10]; int number = 30; itoa( number, hexstring, 16); // In hexstring is 1e. Hex To Decimal
Collapse | Copy Code
// You can use strtol function and you can specify base. char * hexstring= \"ABCDEF\"; char * p; int number = strtol(hexstring, &p,16); // A function that does this bool HexToDecimal (char* HexNumber, int& Number) { char* pStopString; Number = strtol (HexNumber, &pStopString, 16); return (bool)(Number != LONG_MAX); } Decimal to time
Collapse | Copy Code
char *DecToTime(float fTime, char *szTime) { int nHrs, nMin, nSec; fTime *= 3600; nHrs = (int)fTime / 3600; nMin = (int)(fTime - nHrs * 3600) / 60; nSec = (int)(fTime - nHrs * 3600 - nMin * 60); wsprintf(szTime, \"%02d.%02d.%02d Hrs.Min.Sec.\", nHrs, nMin, nSec); return szTime; } String Conversions
String to Hex
Collapse | Copy Code
sscanf(string, %04X, &your_word16); // where string = your string and // 04 = length of your string and X = hex Hex to CString
Collapse | Copy Code
CString Str; unsigned char Write_Buff[1]; Write_Buff[0] = 0x01; Str.Format(\"0x0%x\",Write_Buff[0]); COleVariant to CString
Collapse | Copy Code
CString strTemp; COleVariant Var; Var = \"FirstName\"; strTemp = Var.bstrVal; AfxMessageBox(strTemp); CString to char pointer
Collapse | Copy Code
CString MyString = \"ABCDEF\"; char * szMyString = (char *) (LPCTSTR) MyString; Collapse | Copy Code
char *pBuffer = new char[1024]; CString strBuf = \"Test\"; pBuffer = strBuf.GetBuffer(sizeof(pBuffer)); char pointer to CString
Collapse | Copy Code
char * mystring = \"12345\"; CString string = mystring; Double to CString including the fractional part
Collapse | Copy Code
CString strValue,strInt, strDecimal; int decimal,sign; double dValue = 4.125; strValue = _fcvt(dValue,6,&decimal,&sign); // Now decimal contains 1 because there is // only one digit before the . strInt = strValue.Left(decimal); // strInt contains 4 strDecimal = strValue.Mid(decimal); // strDecimal contains 125 CString strFinalVal; strFinalVal.Format(\"%s.%s\",strInt,strDecimal); // strFinalVal contains 4.125 Double To CString
Collapse | Copy Code
CString strValue; int decimal,sign; double dValue = 1234567101112; strValue = _ecvt(dValue,15,&decimal,&sign); CString To Double
Collapse | Copy Code
strValue = \"1211109876321\"; dValue = atof(strValue); CString to LPCSTR
Collapse | Copy Code
CString str1 = _T(\"My String\"); int nLen = str1.GetLength(); LPCSTR lpszBuf = str1.GetBuffer(nLen); // here do something with lpszBuf........... str1.ReleaseBuffer(); CString to LPSTR
Collapse | Copy Code
CString str = _T(\"My String\"); int nLen = str.GetLength(); LPTSTR lpszBuf = str.GetBuffer(nLen); // here do something with lpszBuf........... str.ReleaseBuffer(); CString to WCHAR*
Collapse | Copy Code
CString str = \"A string here\" ; LPWSTR lpszW = new WCHAR[255]; LPTSTR lpStr = str.GetBuffer( str.GetLength() ); int nLen = MultiByteToWideChar(CP_ACP, 0,lpStr, -1, NULL, NULL); MultiByteToWideChar(CP_ACP, 0, lpStr, -1, lpszW, nLen); AFunctionUsesWCHAR( lpszW ); delete[] lpszW; LPTSTR to LPWSTR
Collapse | Copy Code
int nLen = MultiByteToWideChar(CP_ACP, 0, lptStr, -1, NULL, NULL); MultiByteToWideChar(CP_ACP, 0, lptStr, -1, lpwStr, nLen); string to BSTR
Collapse | Copy Code
string ss = \"Girish\"; BSTR _bstr_home = A2BSTR(ss.c_str()); CString to BSTR
Collapse | Copy Code
CString str = \"whatever\" ; BSTR resultsString = str.AllocSysString(); _bstr_t to CString
Collapse | Copy Code
#include Char array to integer Collapse | Copy Code char MyArray[20]; int nValue; nValue = atoi(MyArray); Char array to float Collapse | Copy Code char MyArray[20]; float fValue; fValue = atof(MyArray); Char Pointer to double Collapse | Copy Code char *str = \" -343.23 \"; double dVal; dVal = atof( str ); Char Pointer to integer Collapse | Copy Code char *str = \" -343.23 \"; int iVal; iVal = atoi( str ); Char Pointer to long Collapse | Copy Code char *str = \"99999\"; long lVal; lVal = atol( str ); Char* to BSTR Collapse | Copy Code char * p = \"whatever\"; _bstr_t bstr = p; Float to WORD and Vice Versa Collapse | Copy Code float fVar; WORD wVar; fVar = 247.346; wVar = (WORD)fVar; //Converting from float to WORD. //The value in wVar would be 247 wVar = 247; fVar = (float)fVar; //Converting from WORD to float. //The value in fVar would be 247.00 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- esig.cn 版权所有 湘ICP备2023023988号-3
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务