gpt4 book ai didi

c - 我假设整数 2 字节的大小并在 c 中得到不同的值

转载 作者:太空宇宙 更新时间:2023-11-04 07:14:53 26 4
gpt4 key购买 nike

#include<stdio.h>
void main()
{
unsigned int i=65535;//assume that size of integer is 2 byte
printf("%d",i);
}

output=-1//如果整数的大小是2字节

output=65535//如果整数的大小是4字节

谁能解释一下为什么它打印 -1 而不是 65535

据我所知 整数的大小为 2 字节,即 16 位。 i=65535(Decimal value) 65535的二进制表示为1111111111111111.所以很容易容纳65535

最佳答案

使用"%u" 转换,而不是"%d"。这些分别是 unsigned (int) 和 signed (int) 的转换说明符。

关于c - 我假设整数 2 字节的大小并在 c 中得到不同的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25745561/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com