首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

为什么无符号x x=-x x如何变成有符号的了

2012-08-13 
为什么无符号x x-x x怎么变成有符号的了C/C++ code#include stdio.h int main() {unsigned int x 2147

为什么无符号x x=-x x怎么变成有符号的了

C/C++ code
#include "stdio.h" int main() {     unsigned int x= 2147483648;    x =-x;    printf("%d\n",x);}


[解决办法]
楼主知道%d是什么意思么?
[解决办法]
%u


[解决办法]
不是变成有符号的了,是因为被你强制作为有符号数输出了。要用printf打印无符号整数,应该用“%u”。
printf这种变参函数无法保证类型安全,你让它打印成什么它就打印成什么,你还可以试试“%x”、“%p”。甚至“%s”、“%f”,只是程序可能崩溃。

热点排行
Bad Request.