KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I first convert an int32 number to char[4] array, then convert the array back to int32 by (int *), but the number isn't the same as before: unsigned int num = 2130706432; unsigned int x; unsigned char a[4]; a[0] = (num>>24) & 0xFF; a[1] = (num>>16) & 0xFF; a[2] = (num>>8) & 0xFF; a[3] = num & 0xFF; x = *(int *)a; printf("%d\n", x); the output is 127. And if I set num = 127, the output is 2130706432. Does anyone have ideas?
Tags (comma-separated)
Save Edits
Cancel