轉(zhuǎn)換字節(jié)序的模板函數(shù)
/** 轉(zhuǎn)換字節(jié)序 * @para value 需要轉(zhuǎn)換的數(shù)據(jù)。 * 只會(huì)轉(zhuǎn)換偶數(shù)字節(jié)的數(shù)據(jù),其它的直接返回原值。可以用于顛倒一個(gè)字符串。 * @authr Fongluo * @date 2008/06/06 10:00 **/ template<typename VALUE_TYPE > VALUE_TYPE switchByteOrders(VALUE_TYPE value) { size_t stValueLen = sizeof(value); PBYTE pStart = (PBYTE)&value; PBYTE pEnd = pStart + (stValueLen - 1); if(0 != stValueLen && (0 == (stValueLen&0x01))) { stValueLen /= 2; for(size_t i=0; i< stValueLen; i++) { swap((*pStart), (*pEnd)); pStart ++; pEnd --; } } return value; }
posted on 2008-06-04 10:16 FongLuo 閱讀(345) 評(píng)論(0) 編輯 收藏 引用

