麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

Conversion between float and hexadecimal in VBA use.

2019-11-11 05:47:22
字體:
來源:轉載
供稿:網友

Some times we need a VBA function to perform the conversion between float and hexademical data. After searching the web site , I got a copy of codes to use. Until now, it worked OK, so share with you.  The code was not original made by myself, I just copied it. So, if you (author) read this, you can contact me to decide whether to delete.

'This is VBS code.'===============================================================================' User-defined data types' (Necessary because that's the only way LSET works)'===============================================================================Type uLng: l As Long: End TypeType uFlt: f As Single: End Type'===============================================================================' Functions for Singles (church dances)'===============================================================================Function Float2Hex(s As Single) As String ' shg 2008-0919 ' Returns the conversion of float s to a hex string Const sPad As String = "00000000"; Dim uf As uFlt Dim ul As uLng uf.f = s LSet ul = uf Float2Hex= Right(sPad And Hex(ul.l), 8)End FunctionFunction Hex2Float(s As String) As String ' Returns the conversion of a hex string to float Dim uf As uFlt Dim ul As uLng ul.l = Val("&H" & s) LSet uf = ul If (ul.l = 0) Then Hex2Float = 0# Else Hex2Float = IIf(uf.f < 1, 1, "0" & uf.f, uf.f) End IfEnd FunctionSub test() Msgbox Hex2Float("40200000")End sub

Conversion

//Compare with C language.#ifndef COUNTOF #define COUNTOF(__a) ((sizeof(__a))/(sizeof(*(__a))))#endifstatic void vS_Uchar2ASCIIHex( unsigned char bSrcData, unsigned char *pbString ){ unsigned char b4bitData = 0; if( NULL != pbString ) { b4bitData = ( bSrcData >> 4 ) & 0x0f; //first , high 4-bit if( b4bitData > 10 ) { b4bitData = b4bitData + '0'; } else { b4bitData = b4bitData + 'A' - 10; } *pbString = b4bitData; pbString++; b4bitData = bSrcData & 0x0f; // next , low 4-bit if( b4bitData > 10 ) { b4bitData = b4bitData + '0'; } else { b4bitData = b4bitData + 'A' - 10; } *pbString = b4bitData; }}static void vS_Uint2ASCIIHex( unsigned int dwSrc, char *pbDesStr ){ unsigned char dwTmp = 0, i = 0; if( NULL != pDesStr ) { for( i = 24; i > 0; i -= 8 ) { dwTmp = (unsigned char)(dwSrc >> i); vS_Uchar2ASCIIHex( dwTmp, pbDesStr ); pbDesStr += 2; } }}void HexFloatConversion( void *pSrcData, float *pDesData, char *pHexStr, bool yRtnType ){ Union tagDatasMemory { float f; unsigned int i; }; char bHexStr[8] = {'/0'}; Union tagDatasMemory dm; if( NULL == pSrcData ) { return; } else { if( yRtnType == TRUE ) //Want to return float { if( pDesData != NULL ) { dm.i = *((unsigned int*)pSrcData); *pDesData = dm.f; } } else //Want to return Hexadecimal characters { if( pHexStr != NULL ) { dm.f = *((float*)pSrcData); vS_Uint2ASCIIHex( dm.i, bHexStr ); memcpy( pHexStr, bHexStr, COUNTOF(bHexStr) ); } } }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日韩午夜一区二区三区 | 性猛交ⅹxxx乱巴西 在线播放中文 | 久久久久久久久久综合 | av在线免费观看网站 | 国产精品美女久久久免费 | 国产免费一级淫片a级中文 99国产精品自拍 | 精品成人久久久 | 国产91精品久久久久久久 | 成人免费一区 | 亚洲一二区精品 | 极品美女一级毛片 | 国产88久久久国产精品免费二区 | 成人福利视频在 | 一级毛片播放 | 毛片在线视频观看 | 黄污在线看 | 日本搞逼视频 | 欧美成人精品一区二区男人小说 | chinese乱子伦xxxx国语对白 | 国产妇女乱码一区二区三区 | 国产88久久久国产精品免费二区 | 免费a级毛片永久免费 | 色吧久久| 精品人成 | 中国fx性欧美xxxx | 欧美.com| 亚洲第一成人久久网站 | 国产一区二区不卡视频 | 国产精品久久久久久久hd | 成人一级视频 | 日本一道aⅴ不卡免费播放 久久久久久久高清 | 亚洲极色 | 日本免费不卡一区二区 | 久久精品1区2区 | 欧美日韩a∨毛片一区 | 欧美成人一区二区三区电影 | 亚洲九九爱 | 双性精h调教灌尿打屁股的文案 | 九九热精品免费 | 久久综合综合 | 国产一级毛片国语版 |