1. The problem statement, all variables and given/known data Write a C program that converts a 32-bit integer from little to big endian. 2. Relevant equations None. 3. The attempt at a solution Code (Text): return (((num&0x000000FF)<<24) + ((num&0xFF000000)>>24)) + ((num&0x0000FF00)<<8) + ((num&0x00FF0000)>>8); This works for small numbers but fails when they get large. Everything is stores in unsigned long ints. Any idea as to what is wrong? Thanks in advance.