Advertisement
Guest User

Untitled

a guest
Aug 20th, 2013
44
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.63 KB | None | 0 0
  1. #define COUNTOF(x) (sizeof(x)/sizeof(*x))
  2.  
  3. int mergeTwoInts(const int first, const int second)
  4. {
  5.     return (first << 16) | second;
  6. }
  7.  
  8. int *splitToTwoInts(const unsigned int merged)
  9. {
  10.     int *ret = new int[2];
  11.     ret[0] = (merged >> 16) & 0xFFFF;
  12.     ret[1] = merged & 0xFFFF;
  13.     return ret;
  14. }
  15.  
  16. void testSplitStrings() {
  17.     unsigned int id [] = { 65533, 65531, 0, 8, 1, 2, 1, 1 };
  18.    
  19.     int t1, t2, merged;
  20.     for(int i = 0; i < COUNTOF(id); i+=2) {
  21.         merged = mergeTwoInts(id[i], id[i+1]);
  22.         cout << id[i] << " ^= " << id[i+1] << " -> " << merged<< " -> " <<  splitToTwoInts(merged)[0] << " !^ " << splitToTwoInts(merged)[1] << endl;
  23.     }
  24. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement