Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,890 questions

51,819 answers

573 users

How to convert a 16-bit number between big-endian and little-endian values in C++

2 Answers

0 votes
#include <iostream>
#include <bitset>

int main(void)
{
    // 16 bit 

    // unsigned short _byteswap_ushort(unsigned short value); // VS

    unsigned short n = 61696;

    std::cout << std::bitset<16>(n) << "\n";

    n = _byteswap_ushort(n);

    std::cout << std::bitset<16>(n) << "\n";
}


/*

1111000100000000
0000000011110001

*/

 



answered Jan 2, 2025 by avibootz
edited Jan 3, 2025 by avibootz
0 votes
#include <iostream>
#include <bitset>

int main(void)
{
    // 16 bit 
    
    unsigned short n = 4660; 

    std::cout << std::bitset<16>(n) << "\n";

    n = (n << 8) | (n >> 8);

    std::cout << std::bitset<16>(n) << "\n";
}


/*

0001001000110100
0011010000010010

*/

 



answered Jan 2, 2025 by avibootz
edited Jan 3, 2025 by avibootz
...