C库专题(Day1)
- <assert.h>
C库宏-assert() 定义:#define assert(ignore) ((void)0)
void assert(int experession);
expression -- 这可以是一个变量或任何 C 表达式。如果 expression 为 TRUE,assert() 不执行任何动作。如果expression 为 FALSE,assert() 会在标准错误 stderr 上显示错误消息,并中止程序执行。
- <ctype.h>
| 函数 | 描述 |
| int isalnum(int c) | 检查所传的字符是否是字母和数字。 |
| int isalpha(int c) | 检查所传的字符是否是字母。 |
| int iscntrl(int c) | 检查所传的字符是否是控制字符。 |
| int isdiqit(int c) | 检查所传的字符是否是十进制数字。 |
| int isgraph(int c) | 检查所传的字符是否有图形表示法。 |
| int islower(int c) | 检查所传的字符是否是小写字母。 |
| int isprint(int c) | 检查所传的字符是否是可打印的。 |
| int ispunct(int c) | 检查所传的字符是否是标点符号字符。 |
| int isspace(int c) | 检查所传的字符是否是空白字符。 |
| int isupper(int c) | 检查所传的字符是否是大写字母。 |
| int isxdigit(int c) | 检查所传的字符是否是十六进制数字。 |
转换函数
int tolower(int c),int toupper(int c)
- <errno.h>
C 标准库的 errno.h 头文件定义了整数变量 errno,它是通过系统调用设置的,在错误事件中的某些库函数表明了什么发生了错误。该宏扩展为类型为 int 的可更改的左值,因此它可以被一个程序读取和修改。
在程序启动时,errno 设置为零,C 标准库中的特定函数修改它的值为一些非零值以表示某些类型的错误。也可以在适当的时候修改它的值或重置为零。
库宏
| 宏 | 描述 |
| extern int errno | 通过系统调用设置的宏,在错误事件中的某些库函数表明了什么发生了错误。 |
| EDOM Domain Error | 表示一个域错误,它在输入参数超出数学函数定义的域时发生,errno 被设置为 EDOM |
| ERANGE Range Error | 表示一个范围错误,它在输入参数超出数学函数定义的范围时发生,errno 被设置为 ERANGE |
- <limits.h>
limits.h 头文件决定了各种变量类型的各种属性。定义在该头文件中的宏限制了各种变量类型(比如 char、int 和 long)的值。
| 宏 | 值 | 描述 |
| CHAR_BIT | 8 | 比特 |
| SCHAR_MIN | -128 | |
| SCHAR_MAX | 127 | |
| UCHAR_MAX | 255 | |
| CHAR_MIN | 0 | 定义类型 char 的最小值,如果 char 表示负值,则它的值等于 SCHAR_MIN,否则等于 0。 |
| CHAR_AMX | 127 | 定义类型 char 的最大值,如果 char 表示负值,则它的值等于 SCHAR_MAX,否则等于 UCHAR_MAX。 |
| MB_LEN_MAX | 1 | 定义多字节字符中的最大字节数。 |
| SHRT_MIN | -32768 | |
| SHRT_MAX | 32767 | |
| USHRT_AMX | 65535 | |
| INT_MIN | -32768 | |
| INT_MAX | 32767 | |
| UINT_MAX | 65535 | |
| LONG_MIN | -2147483648 | |
| LONG_MAX | +2147483647 | |
| ULONG_MAX | 4294967295 |
<math.h>
库宏:HUGE_VAL
描述:
当函数的结果不可以表示为浮点数时。如果是因为结果的幅度太大以致于无法表示,则函数会设置 errno 为 ERANGE 来表示范围错误,并返回一个由宏 HUGE_VAL 或者它的否定(- HUGE_VAL)命名的一个特定的很大的值。如果结果的幅度太小,则会返回零值。在这种情况下,error 可能会被设置为 ERANGE,也有可能不会被设置为 ERANGE。
库函数(常用)(所有都是double型的)
| double exp(double x) 返回e的x次幂的值 |
| double idexp(double x,int *exponent) 返回x乘以2的exponent次幂 |
| double log10(double x) |
| double ceil(double x) 返回大于或等于x的最小的整数值 |
| double floor(double x) 返回小于或等于x的最大整数值 |
| double modef(double x,double *integer) 返回值为小数部分,并设置integer为整数部分 |
| double fmod(double x,double y) 返回x除以y的余数 |
| double pow(double x,double y) 返回x的y次幂 |
C库专题(Day1)的更多相关文章
- UI标签库专题二:JEECG智能开发平台Column(列) 子标签
UI标签库专题二:JEECG智能开发平台Column(列) 子标签 1.1. Column(列) 子标签 1.1.1. 演示样例 <t:dgCol title="年龄" ...
- 【SPL标准库专题(1)】 SPL简介
什么是SPL SPL是Standard PHP Library(PHP标准库)的缩写. 根据官方定义,它是"a collection of interfaces and classes th ...
- 【SPL标准库专题(3)】 Classes
我把SPL分为四个部分:Iterator,Classes,Datastructures,Function:而其中classes是就是做一些类的介绍(Iterator与Datastructures相关的 ...
- UI标签库专题十三:JEECG智能开发平台 ckfinder(ckfinder插件标签)
1. ckfinder(ckfinder插件标签) 1.1. 參数 属性名 类型 描写叙述 是否必须 默认值 name string 属性名称 是 null value string 默认值 否 nu ...
- 【SPL标准库专题(10)】SPL Exceptions
嵌套异常 了解SPL异常之前,我们先了解一下嵌套异常.嵌套异常顾名思义就是异常里面再嵌套异常,一个异常抛出,在catch到以后再抛出异常,这时可以通过Exception基类的getPrevious方法 ...
- 【SPL标准库专题(9)】 Datastructures:SplObjectStorage
PHP SPL SplObjectStorage是用来存储一组对象的,特别是当你需要唯一标识对象的时候. PHP SPL SplObjectStorage类实现了Countable,Iterator, ...
- 【SPL标准库专题(8)】 Datastructures:SplFixedArray
SplFixedArray主要是处理数组相关的主要功能,与普通php array不同的是,它是固定长度的,且以数字为键名的数组,优势就是比普通的数组处理更快. 类摘要 SplFixedArray im ...
- 【SPL标准库专题(7)】 Datastructures:SplHeap & SplMaxHeap & SplMinHeap
堆(Heap)就是为了实现优先队列而设计的一种数据结构,它是通过构造二叉堆(二叉树的一种)实现.根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆.二叉堆还常用于排序(堆排序). 类摘 ...
- 【SPL标准库专题(6)】 Datastructures:SplPriorityQueue
普通的队列是一种先进先出的数据结构,元素在队列尾追加,而从队列头取出.在优先队列中,元素被赋予优先级.当访问元素时,具有最高优先级的元素最先取出.优先队列具有最高级先出 (largest-in,fir ...
随机推荐
- CIPAddressCtrl控件
CIPAddressCtrl m_ipCtrl; 1.获取控件IP值 int GetAddress(byte& byteFirst, byte& byteTwo, byte& ...
- uva 10077 - The Stern-Brocot Number System
想法: 初始化三個數L=0/1, M=1/1, R=1/0,設輸入的分數為a: 如果a<M,那麼要往左邊走, R = M; M = (L分子+M分子)/(L分母+M分母); 如果a& ...
- Centos 6.5 搭建php环境(nginx+mariadb+php7)
1.mariaDb vim /etc/yum.repos.d/MariaDB.repo [mariadb] name = MariaDB baseurl = http://yum.mariadb.or ...
- 阿里云服务器上使用iptables设置安全策略
转自:http://www.netingcn.com/aliyun-iptables.html 公司的产品一直运行在云服务器上,从而有幸接触过aws的ec2,盛大的云服务器,最近准备有使用阿里云的弹性 ...
- getAttribute:取得属性; setAttribute:设置属性。
input.setAttribute("title"); 当它是一个值,就是取值. input.setAttribute("title", "hell ...
- 文成小盆友python-num13 整个堡垒机
本节主要内容: 1.pymsql的使用 2.SQLAchemy使用 3.Paramiko 4.通过ORM功能使用和Paramiko的使用实现一个简单的堡垒机模型. 一.pymsql的使用 pymsql ...
- linux下实现ls()函数遍历目录
转载请注明原创:http://www.cnblogs.com/StartoverX/p/4600794.html 需求:在linux下遍历目录,输出目录中各文件名. 在linux下遍历目录的相关函数有 ...
- 机器学习之python: kNN
################################################## # kNN : k Nearest Neighbour # Author : Monne # Da ...
- 魔法方法:算术运算 - 零基础入门学习Python042
魔法方法:算术运算 让编程改变世界 Change the world by program 我现在重新提一个名词:工厂函数,不知道大家还有没有印象?我们在老早前就提到过Ta,由于那时候我们还没有学习类 ...
- Android开发者须知的几种APP加密方式--备
作为一个Android开发者,不仅需要使自己的APP功能丰富,便于使用,同时也需要去完善APP的安全性,下面就介绍几种简单而又可靠的加密方法.1.Spongy Castle Spongy Castle ...