| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3413 人关注过本帖
标题:如何编写代码求得自己系统上int,char,long等基本类型的最大值和最小值?
取消只看楼主 加入收藏
xdzsm
Rank: 2
等 级:论坛游民
帖 子:137
专家分:99
注 册:2010-10-26
结帖率:83.33%
收藏
已结贴  问题点数:20 回复次数:5 
如何编写代码求得自己系统上int,char,long等基本类型的最大值和最小值?
如题,请指教。
搜索更多相关主题的帖子: 最大值 long 
2011-03-09 21:03
xdzsm
Rank: 2
等 级:论坛游民
帖 子:137
专家分:99
注 册:2010-10-26
收藏
得分:0 
#include <iostream>
这是我找的答案,仅供参考


#include <limits>
#include <typeinfo>

template<typename T>
struct Type {
   static void print() {
      std::cout << typeid(T).name() << ": range is ("
                << std::numeric_limits<T>::min() << ", "
                << std::numeric_limits<T>::max() << ")\n";
   }
};

int main() {
   Type<char>::print();
   Type<short>::print();
   Type<int>::print();
   Type<long>::print();
   Type<float>::print();
   Type<double>::print();
   Type<long double>::print(); // Some compilers will not handle this one well
   Type<unsigned>::print();
   system("pause");
   return 0;
}



输出如下:
c: range is (
2011-03-09 22:13
xdzsm
Rank: 2
等 级:论坛游民
帖 子:137
专家分:99
注 册:2010-10-26
收藏
得分:0 
输出是:

c: range is (
2011-03-09 22:15
xdzsm
Rank: 2
等 级:论坛游民
帖 子:137
专家分:99
注 册:2010-10-26
收藏
得分:0 

输出如下:
关于c的那行有点问题,抱歉啊!

s: range is (-32768, 32767)
i: range is (-2147483648, 2147483647)
l: range is (-2147483648, 2147483647)
f: range is (1.17549e-038, 3.40282e+038)
d: range is (2.22507e-308, 1.79769e+308)
e: range is (0, 1.#INF)
j: range is (0, 4294967295)
2011-03-09 22:16
xdzsm
Rank: 2
等 级:论坛游民
帖 子:137
专家分:99
注 册:2010-10-26
收藏
得分:0 
#include <climit.h>

在Dev-C++上运行时会报错
2011-03-09 23:40
xdzsm
Rank: 2
等 级:论坛游民
帖 子:137
专家分:99
注 册:2010-10-26
收藏
得分:0 
回复 11楼 lucky563591
就这个题而言,应该和sizeof没有关系吧!
2011-03-10 16:06
快速回复:如何编写代码求得自己系统上int,char,long等基本类型的最大值和最小值 ...
数据加载中...
 
   



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

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