-1 unsigned output

-sharpinclude <stdio.h>
int main()
{
    short num = -1;
    // 1000 0000 0000 0001()
    // 1111 1111 1111 1110()
    // 1111 1111 1111 1111()
    // ,  65535
    printf("%u\n", num);
}

question: why is the result not 65535
Thank you

Mar.30,2021

you need

  

your result should be 4294967295, right? 32-bit (not 16-bit), the binary corresponding to-1 is 32 1s, so the result is 2 ^ 32-1

MySQL Query : SELECT * FROM `codeshelper`.`v9_news` WHERE status=99 AND catid='6' ORDER BY rand() LIMIT 5
MySQL Error : Disk full (/tmp/#sql-temptable-64f5-1b35e45-40559.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
MySQL Errno : 1021
Message : Disk full (/tmp/#sql-temptable-64f5-1b35e45-40559.MAI); waiting for someone to free some space... (errno: 28 "No space left on device")
Need Help?