Same output for htonl() and ntohl() on an integer
问题 I ran the following program on little-endian [LE] machine [Linux, Intel processor]. I am unable to explain the 3 outputs in below code snippet. Since machine is LE, the value of a is stored as 0x78563412 . When printing, it is displaying its actual value. Since its an LE machine, I expect ntohl() to be a no-op and display 0x78563412 , which it is doing. However, I expect 0x12345678 for 2nd print statement containing htonl() . Can someone please help me understand why they are same? int main()