【问题标题】:Is there any way by which you can find the max size of a data type? [duplicate]有什么方法可以找到数据类型的最大大小? [复制]
【发布时间】:2010-09-03 16:12:38
【问题描述】:

可能重复:
How would you set a variable to the largest number possible in C?

我们能找到 C 语言中数据类型的最大大小吗?

【问题讨论】:

  • 如“所有平台和实现的最大尺寸?”
  • 我的意思是如何获得他可以分配给变量的最大值,这样就不会发生溢出。

标签: c


【解决方案1】:

如果您想知道可以存储在给定数据类型的变量中的最大值和最小值,可以检查这些不同的常量:

LONG_MIN、LONG_MAX,其余的请参见 here

【讨论】:

    【解决方案2】:

    没有最大尺寸。数据类型具有大小,并且在该实现中保持不变。您可以通过sizeof(datatype) 获取。

    如果您要求数据类型可表示的最大数字,那么对于无符号类型,您可以使用(unsigned type)-1。如果您只使用无符号类型定义(size_t 等)并且不知道确切的基础类型名称,这将很有用。对于签名类型,这将不起作用。不过有一些宏(包括无符号变体)

    INT_MAX /* maximal int value */
    LONG_MAX /* maximal long value */
    UINT_MAX /* maximal unsigned int value */
    /* etc... */
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-17
      • 2011-01-30
      • 2015-10-18
      • 1970-01-01
      相关资源
      最近更新 更多