本文转载自:C 标准库 - <limits.h>


简介

limits.h 头文件决定了各种变量类型的各种属性。定义在该头文件中的宏限制了各种变量类型(比如 char、int 和 long)的值。

这些限制指定了变量不能存储任何超出这些限制的值,例如一个无符号可以存储的最大值是 255。


库宏

下面的值是特定实现的,且是通过 #define 指令来定义的,这些值都不得低于下边所给出的值。

描述
CHAR_BIT 8 定义一个字节的比特数。
SCHAR_MIN -128 定义一个有符号字符的最小值。
SCHAR_MAX 127 定义一个有符号字符的最大值。
UCHAR_MAX 255 定义一个无符号字符的最大值。
CHAR_MIN 0 定义类型 char 的最小值,如果 char 表示负值,则它的值等于 SCHAR_MIN,否则等于 0。
CHAR_MAX 127 定义类型 char 的最大值,如果 char 表示负值,则它的值等于 SCHAR_MAX,否则等于 UCHAR_MAX。
MB_LEN_MAX 1 定义多字节字符中的最大字节数。
SHRT_MIN -32768 定义一个短整型的最小值。
SHRT_MAX +32767 定义一个短整型的最大值。
USHRT_MAX 65535 定义一个无符号短整型的最大值。
INT_MIN -32768 定义一个整型的最小值。
INT_MAX +32767 定义一个整型的最大值。
UINT_MAX 65535 定义一个无符号整型的最大值。
LONG_MIN -2147483648 定义一个长整型的最小值。
LONG_MAX +2147483647 定义一个长整型的最大值。
ULONG_MAX 4294967295 定义一个无符号长整型的最大值。

实例

下面的实例演示了 limit.h 文件中定义的一些常量的使用。

#include <stdio.h>
#include <limits.h>int main()
{printf("The number of bits in a byte %d\n", CHAR_BIT);printf("The minimum value of SIGNED CHAR = %d\n", SCHAR_MIN);printf("The maximum value of SIGNED CHAR = %d\n", SCHAR_MAX);printf("The maximum value of UNSIGNED CHAR = %d\n", UCHAR_MAX);printf("The minimum value of SHORT INT = %d\n", SHRT_MIN);printf("The maximum value of SHORT INT = %d\n", SHRT_MAX); printf("The minimum value of INT = %d\n", INT_MIN);printf("The maximum value of INT = %d\n", INT_MAX);printf("The minimum value of CHAR = %d\n", CHAR_MIN);printf("The maximum value of CHAR = %d\n", CHAR_MAX);printf("The minimum value of LONG = %ld\n", LONG_MIN);printf("The maximum value of LONG = %ld\n", LONG_MAX);return(0);
}

让我们编译和运行上面的程序,这将产生下列结果:

The number of bits in a byte 8
The minimum value of SIGNED CHAR = -128
The maximum value of SIGNED CHAR = 127
The maximum value of UNSIGNED CHAR = 255
The minimum value of SHORT INT = -32768
The maximum value of SHORT INT = 32767
The minimum value of INT = -32768
The maximum value of INT = 32767
The minimum value of CHAR = -128
The maximum value of CHAR = 127
The minimum value of LONG = -2147483648
The maximum value of LONG = 2147483647

C标准库 limits.h相关推荐

  1. C 标准库 - limits.h

    C 标准库 - <limits.h> 简介 limits.h 头文件决定了各种变量类型的各种属性.定义在该头文件中的宏限制了各种变量类型(比如 char.int 和 long)的值. 这些 ...

  2. C 标准库 limits.h

    https://www.runoob.com/cprogramming/c-standard-library-limits-h.html Table of Contents C 标准库 - 简介 库宏 ...

  3. C 标准库 —— limits.h

    C 标准库-- string.h C 标准库 -- time.h C 标准库 -- limits.h C 标准库 -- stdio.h C 标准库-- stdlib.h(包括 rand srand 的 ...

  4. C 标准库 —— stdio.h

    C 标准库-- string.h C 标准库 -- time.h C 标准库 -- limits.h C 标准库 -- stdio.h C 标准库-- stdlib.h(包括 rand srand 的 ...

  5. C 标准库 —— time.h

    C 标准库-- string.h C 标准库 -- time.h C 标准库 -- limits.h C 标准库 -- stdio.h C 标准库-- stdlib.h(包括 rand srand 的 ...

  6. C 标准库—— string.h

    C 标准库 -- string.h C 标准库 -- time.h C 标准库 -- limits.h C 标准库 -- stdio.h C 标准库-- stdlib.h(包括 rand srand ...

  7. C 标准库—— stdlib.h(包括 rand srand 的实现)

    C 标准库-- string.h C 标准库 -- time.h C 标准库 -- limits.h C 标准库 -- stdio.h C 标准库-- stdlib.h(包括 rand srand 的 ...

  8. C 标准库—— assert.h

    C 标准库-- string.h C 标准库 -- time.h C 标准库 -- limits.h C 标准库 -- stdio.h C 标准库-- stdlib.h(包括 rand srand 的 ...

  9. C 标准库 - ctype.h

    C 标准库 - <ctype.h> 简介 C 标准库的 ctype.h 头文件提供了一些函数,可用于测试和映射字符. 这些函数接受 int 作为参数,它的值必须是 EOF 或表示为一个无符 ...

最新文章

  1. 二叉排序树的存储结构和增删查改
  2. mysql常用的函数
  3. MATLAB双纵坐标绘图(重要)
  4. python绘制如下图形、小三角形边长20_在编程中发现数学之美——使用Python小龟绘制多边形...
  5. Python解决数独
  6. 【收藏】idea 背景图插件
  7. Sereja and Brackets CodeForces - 380C (线段树+分治思路)
  8. 数据结构与算法--图论-深度优先搜索及其应用
  9. 理解线程的挂起,sleep还有阻塞
  10. 高清银行LOGO图片整合分享
  11. 2021亚太杯数学建模竞赛
  12. java word 文档合并_[原创]java合并word文件
  13. 24L01/SI24R1调试笔记
  14. C#获取当前桌面路径
  15. 1月英语总结—发现新大陆
  16. Java - 常用的Web服务器有哪些?
  17. GDKOI2023游记
  18. 我的苹果电脑中毒了?mac也会中病毒?喜闻乐见(附杀毒软件测试)
  19. 好的设计要多分享,5款优秀在线原型设计案例
  20. 【学习笔记】大数据技术原理与应用(MOOC视频、厦门大学林子雨)

热门文章

  1. linux 实验 广技师 进程管理与系统监视,Linux系统管理之进程管理
  2. as cast float server sql_Sql Server中Float格式转换字符串varchar方法
  3. 是否可以从一个static方法内部发出对非static方法的调用?
  4. python内置函数sorted(x)的作用是_Python内置filter与sorted函数
  5. linux卸载kodi,如何在Ubuntu上安装Kodi 18 Beta
  6. 都觉得FFT简单实用,可为什么还有人不断问问题呢?
  7. 第十六届全国大学生广东赛区线上比赛流程规范
  8. 信号与系统2021年期末考试命题
  9. 如何将模糊的图片变得清晰
  10. Navicat中查询哪些表有指定的字段名(技巧)