Because 65535 is stored in memory in the form of161; When %d (signed shaping) is used for output, the highest bit 1 indicates a negative sign; And the storage form of 16 1 is-1 in memory (algorithm: |- 1|= 1, 1 yes 15 0, 1. So output-1