fork download
  1. #include <iostream>
  2. #include <iomanip>
  3.  
  4. int main() {
  5. signed char arr[2] = {0, - 64};
  6. unsigned int value;
  7.  
  8. value = arr[0];
  9. value = value << 8;
  10. value += arr[1];
  11. std::cout << std::hex << std::setw(8) << std::setfill('0') << value << " = " << std::dec << value << std::endl;
  12.  
  13. value = (unsigned int) arr[0];
  14. value = value << 8;
  15. value += (unsigned int) arr[1];
  16. std::cout << std::hex << std::setw(8) << std::setfill('0') << value << " = " << std::dec << value << std::endl;
  17.  
  18. value = (unsigned char) arr[0];
  19. value = value << 8;
  20. value += (unsigned char) arr[1];
  21. std::cout << std::hex << std::setw(8) << std::setfill('0') << value << " = " << std::dec << value << std::endl;
  22.  
  23. return 0;
  24. }
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
ffffffc0 = 4294967232
ffffffc0 = 4294967232
000000c0 = 192