Charles
Thinking low level, Coding high level
C++博客
首页
新随笔
联系
聚合
管理
posts - 71, comments - 39, trackbacks - 0
计算Int最大最小值
通常我们会使用CRT提供给我们的一个头文件<limits.h>中预定义宏INT_MAX, INT_MIN, UINT_MAX来定义int的最大最小值
下边给出由计算得出这些值的方法,其他数据类型同理
unsigned
int
GetUnsignedIntMax()
{
return
~
0
;
}
signed
int
GetSignedIntMax()
{
return
(static_cast
<
unsigned
int
>
(
~
0
))
>>
1
;
}
signed
int
GetSignedIntMin()
{
signed
int
i
=
-
1
;
if
(i
&
1
)
return
-
( (static_cast
<
unsigned
int
>
(
~
0
))
>>
1
)
-
1
;
else
return
-
( (static_cast
<
unsigned
int
>
(
~
0
))
>>
1
);
}
稍微解释一下,前两个没有什么好说的,最后一个要考虑是two complement还是one complement
如果是前者,有这样一个计算公式,~X + 1= -X,即一个数取反加一表示这个数所对应的负数
posted on 2006-12-01 15:55
Charles
阅读(1111)
评论(5)
编辑
收藏
引用
所属分类:
面试小算法
FeedBack:
#
re: 计算Int最大最小值
2006-12-04 09:24 |
史传红
很好。
回复
更多评论
#
re: 计算Int最大最小值
2006-12-13 10:15 |
brent
不错.
回复
更多评论
#
re: 计算Int最大最小值
2006-12-25 11:56 |
沐枫
为啥用函数呢...
const int INT_MAX = ~0;
这样不挺好的。
回复
更多评论
#
re: 计算Int最大最小值
2006-12-25 12:20 |
Charles
面试题而已,无他
回复
更多评论
#
re: 计算Int最大最小值
2008-04-14 18:40 |
网友
2147483647
回复
更多评论
刷新评论列表
标题
姓名
主页
验证码
*
内容(提交失败后,可以通过“恢复上次提交”恢复刚刚提交的内容)
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
.NET频道
博客园社区
闪存
相关文章:
Integer Partition
数1的个数
Fibonacci
简单打印内存的小玩意儿
矩阵式螺旋输出
求最大公约数与最小公倍数
数内置类型的bit数
计算Int最大最小值
两个堆栈模拟一个队列
检测补码表示
网站导航:
博客园
BlogJava
博客生活
IT博客网
C++博客
PHP博客
博客园社区
管理
<
2009年7月
>
日
一
二
三
四
五
六
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
决定开始写工作日记,记录一下自己的轨迹...
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
(3)
给我留言
查看公开留言
查看私人留言
随笔分类
(70)
Helper Utility(1)
读书作笔记(3)
发泄(3)
面试小算法(27)
拿来主义(25)
随笔(10)
一般人儿我不告诉他(1)
随笔档案
(71)
2008年3月 (1)
2008年2月 (1)
2007年7月 (3)
2007年3月 (3)
2007年1月 (18)
2006年12月 (16)
2006年11月 (29)
相册
Me
charles推荐访问
Code Project
Linux Journal
Linux man pages
Single UNIX Specification
电子书1
电子书2
电子书3
搜索
积分与排名
积分 - 22180
排名 - 155
最新评论
1. re: 数单词数
规范化;门口麻烦机;那么孔方兄那么妈妈法;酿母菌法那么;风格那么明年;愤怒麻烦那么愤怒愤怒留念多孔蕈乐观好看的里边赶快巴拿马城,新年巴拿马国际法,不
--申诉台
2. re: 数单词数
感到发现看来自动化大会单行本打开怎么赶快电子管矛盾感动不动门口‘大批看病黄道婆民主
--申诉台
3. re: 移除字符
评论内容较长,点击标题查看
--D_BOY
4. re: 很土
呵呵,慢慢来就好嘛
--flamingo
5. re: 毕业啦
评论内容较长,点击标题查看
--moonlight
阅读排行榜
1. 求最大公约数与最小公倍数(1716)
2. 计算Int最大最小值(1111)
3. 寻找最长递增子序列(921)
4. IA32/Windows&Linux高精度计时器(812)
5. 数1的个数(801)
评论排行榜
1. 计算Int最大最小值(5)
2. IA32/Windows&Linux高精度计时器(4)
3. 数单词数(3)
4. 两个堆栈模拟一个队列(3)
5. ZMD(3)