C语言的一些预处理指令和系统头文件

来源:互联网 发布:网易域名管理平台 编辑:程序博客网 时间:2024/06/04 18:17
预处理指令:
1.#include    包含一个文本文件的内容
2.#define     定义宏
3.#undef      取消先前定义的某个宏
4.#if         如果条件满足执行指定动作
5.#ifdef      如果已经定义了某个宏,执行指定动作
6.#ifndef     与#ifdef相反,如果没有定义某个宏,执行指定动作
7.#else       如果先前的#if、#ifdef或ifndef不成立,执行指定动作
8.#endif      作为#if、#ifdef或#ifndef的结束标志
9.#elif       也就是else-if的意思,用于#if-#else的嵌套
10.#line      设置当编译器发出警告或错误信息时所使用的行号
11.#erro      指定编译期间的错误及对应信息
12.#pragma    给编译器提供实现细节信息
13.#          忽略此行


一些有用的系统头文件
1.ctype.h     测试和修改字符函数


<ctype.h>
关于字符类型的头文件操作
tolower()   转换成小写
toupper()   转换成大写
isalpha()   测试字母
islower()   测试小写
isupper()   测试大写
isalnum()   测试大写或小写
iscntrl()   测试控制符
isprint()   可打印字符包括空格
isgraph()   可打印字符不包括空格
isdigit()   是十进制数(0-9)
isxdigit()  十六进制基数
isblank()    标准空白字符(空格,\t)
isspace()   空格字符(空格,\t,\v,\r,\n,\f)
ispunct()   isspace()&isalnum()返回false的可打印字符


2.float.h     描述局部浮点数状态


在float.h中定义的部分常量                                          Borland C++中的值
FLT_DIG         float型的有效位个数                                6
DBL_DIG         double型的有效位个数                               15
LDBL_DIG        long double型的有效位个数                          19
FLT_EPSILON     float 型的最小正数x,满足1.0+x!=1.0                1.9209290e-07
DBL_EPSILON     double型的最小正数x,满足1.0+x!=1.0               202204460492503131e-19
LDBL_EPSILON    long double 型的最小正数x,满足1.0+x!=1.0         1.084202172485504e-19
FLT_MAX         float型的最大值                                    3.40282347e38
DBL_MAX         double型的最大值                                   1.797693134862316e308
LDBL_MAX        long double型的最大值                              1.18973149535723e4932
FLT_MAX_10_EXP  float型允许的10为底的最大指数                      38
DBL_MAX_10_EXP  double型允许的10为底的最大指数                     308
LDBL_MAX_10_EXP long double型允许的10为底的最大指数                4932




3.limits.h    描述局部整数状态


SCHAR_MIN      一个signed char型量的最小值(下面类似)      
SCHAR_MAX
UCHAR_MAX
CHAR_MIN
CHAR_MAX
SHRT_MIN
SHRT_MAX
USHRT_MAX
INT_MIN
INT_MAX
UINT_MAX
LONG_MIN
LONG_MAX
ULONG_MAX
4.math.h      数学函数


abs           int型数值的绝对值
fabs          float型数值的绝对值
labs          long 型绝对值
log            以e为底
log10         以10为底
pow           x^y
rand          产生随机数
sqrt          平方根
srand          初始化随机数发生器
exp           e的x次方
sin           正弦
cos
tan  
sinh          双曲正弦
cosh
tanh
acos          反余弦
asin
atan
atof          字符串转double型数值
atoi          字符窜转int型数值
atol          字符串转long型数值
ceil          上限
floor         下限




5.setjmp.h    非局部的转移,包含了异常信号的宏定义






6.signal.h    异常处理



SIGABRT       非正常的终止
SIGINT        中断
SIGILL        非法的指令
SIGFPE        非法的算术指令
SIGSEGV       访问非法的存储单元
SIGTERM       请求程序终止
SIG_DFL       当捕获一个指定的异常信号时终止程序 
SIG_IGN       忽略一个指定的异常信号




7.stdarg.h    参数数量不固定的函数




8.stdio.h     输入输出
9.string.h    字符串处理函数
参考http://www.diybl.com/course/3_program/c/c_js/20091008/178247.html
10.time.h     时间函数



原创粉丝点击