免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4935 | 回复: 14
打印 上一主题 下一主题

在不知道int是占几字节的情况下打印它的最大值 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-07-21 19:05 |只看该作者 |倒序浏览
在不知道int是占几字节的情况下打印它的最大值?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2005-07-21 19:09 |只看该作者

在不知道int是占几字节的情况下打印它的最大值

[quote]原帖由 "ruige"]在不知道int是占几字节的情况下打印它的最大值?[/quote 发表:

  1. #include <stdio.h>;

  2. int main()
  3. {
  4.     printf("%d\n",(unsigned int)-1/2);
  5.     return 0;
  6. }
复制代码

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
3 [报告]
发表于 2005-07-21 19:19 |只看该作者

在不知道int是占几字节的情况下打印它的最大值

print pow( 2, sizeof(int)-1 ) - 1.

论坛徽章:
0
4 [报告]
发表于 2005-07-21 19:33 |只看该作者

在不知道int是占几字节的情况下打印它的最大值

mq110 做的很好.

[quote]原帖由 "flw"]print pow( 2, sizeof(int)-1 ) - 1.[/quote 发表:


这是什么?好象不是C吧.据说flw会perl不会是perl吧?既然是perl 怎么还出int了.perl不都是用标量吗?怪异.flw明摆着是在C版卖弄吗.

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
5 [报告]
发表于 2005-07-21 19:35 |只看该作者

在不知道int是占几字节的情况下打印它的最大值

[quote]原帖由 "ruige"]这是什么?好象不是C吧.据说flw会perl不会是perl吧?既然是perl 怎么还出int了.perl不都是用标量吗?怪异.flw明摆着是在C版卖弄吗.[/quote 发表:

我现在很忙,细节我不想考虑,只是给个思路而已。

论坛徽章:
0
6 [报告]
发表于 2005-07-21 19:36 |只看该作者

在不知道int是占几字节的情况下打印它的最大值

如果使用C语言或不使用标准C++时,包含的头文件就是float.h和limits.h

  1. /**
  2.         * 这些最大最小值是与所使用的系统相关的,都保存在命名常量中
  3.         * 头文件climits保存了这些命名常量.
  4. **/
  5. #include <iostream>;
  6. #include <climits>;

  7. using namespace std;

  8. int main()
  9. {
  10.         cout << "Number of bits in a byte " << CHAR_BIT << endl;
  11.         cout << "Maximum of char value " << CHAR_MAX << endl;
  12.         cout << "Minimum char value " << CHAR_MIN << endl;
  13.         cout << "Maximum short value "  << SHRT_MAX << endl;
  14.         cout << "Minimum of short value" << SHRT_MIN << endl;
  15.         cout << "Maximum of int value " << INT_MAX << endl;
  16.         cout << "Minimum of int value " << INT_MIN << endl;
  17.         cout << "Maximum of long value " << LONG_MAX << endl;
  18.         cout << "Minimum of long value " << LONG_MIN << endl;
  19.         cout << "Maximum unsigned char value " << UCHAR_MAX << endl;
  20.         cout << "Maximum unsigned short value " << USHRT_MAX << endl;
  21.         cout << "Maximum unsigned int value " << UINT_MAX << endl;
  22.         cout << "Maximum unsigned long value " << ULONG_MAX << endl;

  23.         return (0);
  24. }

  25. #include <iostream>;
  26. #include <cfloat>;

  27. using namespace std;

  28. int main()
  29. {
  30.         cout << "Approximate number of significant digits "
  31.                 << " in a float value " << FLT_DIG << endl;
  32.         cout << "Maximum positive float value " << FLT_MAX << endl;
  33.         cout << "Minimum positive float value " << FLT_MIN << endl;
  34.         cout  << "Approximate number of significant digits "
  35.                 << "in a double value " << DBL_DIG << endl;
  36.         cout << " Maximum positive double value " << DBL_MAX << endl;
  37.         cout << "Minimum positive double value " << DBL_MIN << endl;
  38.         cout << "Approximate number of significant digits "       
  39.                 << "in a long double value " << LDBL_DIG << endl;
  40.         cout << "Maximum positive long double value " << LDBL_MAX << endl;
  41.         cout << "Minimum positive long double value " << LDBL_MIN << endl;

  42.         return (0);
  43. }

复制代码

论坛徽章:
0
7 [报告]
发表于 2005-07-21 19:42 |只看该作者

在不知道int是占几字节的情况下打印它的最大值

如果使用C语言或不使用标准C++时,包含的头文件就是float.h和limits.h


谢谢楼上的 这确实是个好办法.

论坛徽章:
0
8 [报告]
发表于 2005-07-21 20:34 |只看该作者

在不知道int是占几字节的情况下打印它的最大值

有一个UNINT_MAX宏的定义。
用UINT_MAX/2应该可以。也可能有个INT_MAX

论坛徽章:
0
9 [报告]
发表于 2005-07-22 03:49 |只看该作者

在不知道int是占几字节的情况下打印它的最大值

flw好酷哦, 跟我想的一样
你要是个女的我一定泡你

论坛徽章:
0
10 [报告]
发表于 2005-07-22 03:51 |只看该作者

在不知道int是占几字节的情况下打印它的最大值

不过好象别人还有更好的答案哦
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP