社区
C语言
帖子详情
问C语言unsigned int 和 int
jzc1983
2006-10-29 09:50:38
unsigned int a = 6;
int b = -20;
(a+b > 6) ? puts("> 6") : puts("<= 6");
为什么是a+b > 6?
...全文
437
10
打赏
收藏
问C语言unsigned int 和 int
unsigned int a = 6; int b = -20; (a+b > 6) ? puts("> 6") : puts(" 6?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
louisming
2006-10-30
打赏
举报
回复
都答完了
抢不到分了#_#
lann64
2006-10-29
打赏
举报
回复
加之前把a强制转成int,或把结果强制转为int,可以得到结果是-14,就满足楼主的表达式要求了。
(int)a+b>6或(int)(a+b)>6.
lann64
2006-10-29
打赏
举报
回复
usigned int级别比int高,遇到两种不同类型数据运算时,级别低的要提升到级别高的.
int b (-20)提升到unsigned时,是4294967276(对于4字节int)。再加6,呵呵当然结果比6大。
yeknight
2006-10-29
打赏
举报
回复
隐式内型转换
morphymorphy
2006-10-29
打赏
举报
回复
-14的原因是%d
============
楼上说的对。。。
太不小心了。。
mu_yang
2006-10-29
打赏
举报
回复
但是这样不会转换
printf("%d",a+b); 案是-14
-------------------------------
也不是不会转换
-14的原因是%d
printf("%d",6+4294967276); 也会得-14
morphymorphy
2006-10-29
打赏
举报
回复
在做 a+b>6
b作了隐式类型转换。。成了unsigned int型数。。。
但是这样不会转换
printf("%d",a+b); 案是-14
f_acme
2006-10-29
打赏
举报
回复
unsigned int a = 6;
int b = -20;
cout<<(unsigned int)b<<endl;
cout<<a+b<<endl;
(a+b > 6) ? puts("> 6") : puts("<= 6");
----------
这样就可以明白了。
f_acme
2006-10-29
打赏
举报
回复
隐式类型转换,把b变为unsigned int是一个很大的数字来的,4294967276,那a+b当然大于6了。
nule
2006-10-29
打赏
举报
回复
a+b >6结果为0啊
这个程序输出是<=6吧
c语言
unsigned
int
范围,
unsigned
int
32比特数据范围为-2147
提到
unsigned
,大家应该都了解,有朋友
问
c语言
中
unsigned
什么意思,还有人想
问
c语言
中的
unsigned
是什么意思,这到底是咋回事?事实上
unsigned
呢,下面是小编推荐给大家的
unsigned
int
,下面我们一起来看看吧!...
C语言
的
int
类型与
unsigned
int
运算的
问
题。
一、
unsigned
int
变量跟
int
类型的变量运算时得出的结果是什么类型的? 1、先看一个有趣的例子:
int
a = 3;
unsigned
int
b = -6; pr
int
f("%d\n", a+b); if((a+b)>0) { pr
int
f("yes\n");
c语言
signed
int
与
unsigned
int
的运算
一、
C语言
的
int
类型与
unsigned
int
运算的
问
题 1、signed
int
可以简写成
int
,
unsigned
int
一般不做简写。 2、在不同类型的混合运算中,编译器也会自动地转换数据类型,将参与运算的所有数据先转换为同一种类型,...
c语言
中
unsigned
int
和
int
的区别
unsigned
int
a = 6;
int
b = -20; (a+b > 6) ? puts("> 6") : puts(" } 这个
问
题测试你是否懂得
C语言
中的整数自动转换原则,我发现有些开发者懂得极少这些东西。不管如何,这无符号整型
问
题的答案...
C语言
--
int
和
unsigned
int
和char和
unsigned
char
问
题
int
和
unsigned
int
和char和
unsigned
char
问
题 #include<stdio.h> #include<string.h> void main() { /*char a[1000];*/ signed char i=-20;
unsigned
char j=10;
unsigned
char k; //char k; /*...
C语言
69,368
社区成员
243,081
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章