| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3461 人关注过本帖
标题:[求助]32768赋为int unsigned char和signed char型变量,赋值后它在内存中的 ...
只看楼主 加入收藏
wozaixuec
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-3-16
收藏
 问题点数:0 回复次数:10 
[求助]32768赋为int unsigned char和signed char型变量,赋值后它在内存中的存储形
将-32769和32769分别赋为int unsigned char和signed char型变量,赋值后它们在内存中存储的二进制是什么样的?怎么算出的 麻烦讲解一下
32769超出了int的范围 将怎么在内存中存储?
若要以%d形式输出会输出什么?以%c呢?

刚刚学 不明白 希望学过的能说一下其中的转换过程 谢谢!
搜索更多相关主题的帖子: 内存 赋值 int char 变量 
2007-03-16 15:07
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
超过位数截取.

倚天照海花无数,流水高山心自知。
2007-03-16 15:36
wozaixuec
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-3-16
收藏
得分:0 
能说明白点吗?
2007-03-16 15:42
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 

只举一个例子32769
32769转换为二进制数为1000000000000001(共十六位),即为其原码,由于是正数,存在内在中的时候就会原样放入

用%d输出的时候,就会去读取内存,由于最高位是1,就会认为是负数,会将其转换为相应的原码(减1再取反)
也就是0111111111111111,再转换为十进制数就是32767,由于是负数,就会输出-32767.如果用%ld输出,不同的编译器会得到不同的结果,这个地方就不说了


雁无留踪之意,水无取影之心
2007-03-16 16:44
wozaixuec
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-3-16
收藏
得分:0 

谢谢

2007-03-16 17:08
wozaixuec
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-3-16
收藏
得分:0 
如果将一个大于255 和负数以%c形式输出会得到什么结果那?怎样得到的?
2007-03-16 17:12
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 
可能会什么都不输出,因为找不到这个ASCLL码对应的字符

雁无留踪之意,水无取影之心
2007-03-16 17:20
wozaixuec
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-3-16
收藏
得分:0 

知道了 那如果一个足够大的数 99999999转换为2进制 超过16位 但把他定义为INT型时 是截取前16位还是后16位

2007-03-16 17:44
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 
后16位

雁无留踪之意,水无取影之心
2007-03-16 17:53
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
以下是引用PcrazyC在2007-3-16 17:20:47的发言:
可能会什么都不输出,因为找不到这个ASCLL码对应的字符

应该会截取低八位输出.


倚天照海花无数,流水高山心自知。
2007-03-16 18:22
快速回复:[求助]32768赋为int unsigned char和signed char型变量,赋值后它在内 ...
数据加载中...
 
   



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

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