zgfp.net
当前位置:首页 >> x=65535 printF >>

x=65535 printF

首先要明确一点就是,%d显示的是int型,也就是说不管你x是什么,它会把x当做int型来显示 先看一下unsigned int的65535和int的 -1是怎么表示的: unsigned int x = 65535;// 四字节,用2进制进制表示就是 1111 1111 1111 1111 int x = -1;//四字...

如果是C语言,x的值为-1。%d是有符号格式,65535被当作负数处理了

oxFFFF表示16位16进制的最大值,用二进制表示为1111 1111 1111 1111,十进制即65535。

写了个测试程序,结果是 65535;标准答案有问题吧。unsigned int (无符号的整型变量)的 范围为 0~65535。 你自己也可以写个测试的程序,程序跑一下就知道正确与否,望能采纳,谢谢!!!

如果你输出为 %u,结果是65535 %d,表示你输出为int型,是有符号的 65535用二进制码表示是:1111 1111 1111 1111 最高位是1,所以是一个负数 先求(计算机)反码:1111 1111 1111 1110 所以原码为: 1000 0000 0000 0001 根据原码得出结果是:-1

应当用 0xffff 第一个是数字0 不是 字母 o %u是按 10进制 无符号 整型 输出数值。 0xffff 得 65535

unsigned int x=65535 然后呢 转成2进制呗,16个1咯 再然后呢 你又要变成整型,计算机咋办呢?? 求补码呗 补码怎么求? 取反加1呗,怎么取反呢 第一个1是不变的,然后后面15个都变成了0,然后加1 就变成了1,14个0,1 再然后计算机输出 因为你的...

0xffff是十六进制 0xffff=(Decimal)65535 即十进制的65535 printf("%u\n",x)就是输出x的值然后换行 所以会输出65535再换行

其实 long 型是4个字节,short 是2个字节,byte是1个字节。 但 int 是变长的,16机是16位(2字节),32位机就是32位(4字节),64位机就是64位(8字节)。现在很多学校还在用非常老的教材,说 int 是占2个字节。 我想楼主可能是认为 int 是2个字节...

首先要搞清楚不同格式输出是怎么回事 格式字符 意 义 d以十进制形式输出带符号整数(正数不输出符号) o以八进制形式输出无符号整数(不输出前缀0) x,X以十六进制形式输出无符号整数(不输出前缀Ox) u以十进制形式输出无符号整数 f以小数形式输出单...

网站首页 | 网站地图
All rights reserved Powered by www.zgfp.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com