I have an 80 element char array and I am trying to specific elements to an integer and am getting some number errors.
Array element 40 in hex is 0xC0. When I try assigning it to an integer I get in hex 0xFFFFC0, and I dont know why.
char tempArray[80]; //Read in from file, with element 40 as 0xC0
int tempInt = (int)tempArray[40]; //Output as 0xFFFFC0 instead of 0x0000C0
0XC0is negative inchar, and the cast is preserving the sign as anint.int tempInt = (int)tempArray[40];-->unsigned tempInt = (unsigned)tempArray[40];will do the trick.