| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 914 人关注过本帖, 1 人收藏
标题:简单程序,求大侠为小弟解释下
取消只看楼主 加入收藏
greennet111
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2012-4-14
结帖率:100%
收藏(1)
已结贴  问题点数:2 回复次数:13 
简单程序,求大侠为小弟解释下
#include<stdio.h>

main()
{
    unsigned a=100;

    printf("%d\n",~a);
}
书上结果是155  为什么我的电脑上市负数啊  我不是定义为无符号的么  我的电脑上是-101 难道我的程序有问题吗
搜索更多相关主题的帖子: 上市 
2012-04-17 11:43
greennet111
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2012-4-14
收藏
得分:0 
回复 2楼 TonyDeng
我改为%u了,可是结果为什么是4294967195了啊

巾帼不让须眉
2012-04-17 12:23
greennet111
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2012-4-14
收藏
得分:0 
回复 4楼 TonyDeng
100按二进制展开是1100100  取反的话是0011011我还是不明白-101又是怎么得来的啊   大侠,求解啊

巾帼不让须眉
2012-04-17 12:40
greennet111
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2012-4-14
收藏
得分:0 
哦哦  我才看到  谢谢啦

巾帼不让须眉
2012-04-17 12:41
greennet111
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2012-4-14
收藏
得分:0 
回复 5楼 TonyDeng
我还是没看明白101是哪来的  麻烦解释清楚点哈!我是太菜了

巾帼不让须眉
2012-04-17 12:46
greennet111
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2012-4-14
收藏
得分:0 
回复 10楼 TonyDeng
版主,我终于搞懂了,你说的那个数字是一个补码,我一开始没有想到啊  嘿嘿   我错了  原来那个数其实是10000000 00000000 00000000 01100100再减去1啊!!

我太愚钝了  谢谢版主!

巾帼不让须眉
2012-04-17 13:11
greennet111
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2012-4-14
收藏
得分:0 
#include<stdio.h>

main()
{
     int a=100;
    char c='~a';

    printf("%u\n",c);
}  如果改为这样结果是97

巾帼不让须眉
2012-04-17 13:19
greennet111
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2012-4-14
收藏
得分:0 
哦哦  但是救过还是97呀 书是《c语言开发手册》11年出版的  我的机子是32位的  估计是书中搞错了吧

巾帼不让须眉
2012-04-17 13:26
greennet111
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2012-4-14
收藏
得分:0 
还是-101啊

巾帼不让须眉
2012-04-17 13:34
greennet111
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2012-4-14
收藏
得分:0 
电子工业出版社   新华书店买的啊  我靠    我也觉得155来得莫名其妙啊

巾帼不让须眉
2012-04-17 13:42
快速回复:简单程序,求大侠为小弟解释下
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017307 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved