一 、CTYPE.H
1、 extern bit isalpha (unsigned char);
检查参数字符是否为英文字符,是则返回1,否则返回0
2、 extern bit isalnum (unsigned char);
检查参数字符是否为字母或者数字字符,是则返回1,否则返回0
3、 extern bit iscntrl (unsigned char);
检查参数值是否在0x00~0x7F之间或者等于0x7F,是则返回1,否则返回0
4、extern bit isdigit (unsigned char);
检查参数值是否为数字字符,是则返回1,否则返回0
5、extern bit isgraph (unsigned char);
检查参数是否为可打印字符(0x21~0x7E),是则返回1,否则返回0
6、extern bit isprint (unsigned char);
检查参数是否为可打印字符,包括空格符,其余与isgraph相同
7、extern bit ispunct (unsigned char);
检查参数是否为标点、空格或者格式字符,是则返回1,否则返回0
8、extern bit islower (unsigned char);
检查参数是否为小写字母,是则返回1,否则返回0
9、extern bit isupper (unsigned char);
检查参数是否为大写字母,是则返回1,否则返回0
10、extern bit isspace (unsigned char);
检查参数是否为下列之一:空格、制表符、回车、换行、垂直制表符和送纸符号, 是则返回1,否则返回0
11、extern bit isxdigit (unsigned char);
检查参数是否为16进制数字字符,是则返回1,否则返回0
12、extern unsigned char tolower (unsigned char);
将大写字符转换成小写形式,如果字符不在(A~Z)之间,则直接返回该字符
13、extern unsigned char toupper (unsigned char);
将小写字符转换成大写形式,如果字符不在(a~z)之间,则直接返回该字符
14、extern unsigned char toint (unsigned char);
将ASCII字符0~9,A~F(不分大小写)转换成16进制的数字,返回转换后的16进制数字
二、STDIO.H
#ifndef EOF
#define EOF -1
#endif
#ifndef NULL
#define NULL ((void *) 0)
#endif
#ifndef _SIZE_T
#define _SIZE_T
typedef unsigned int size_t;
#endif
1、extern char _getkey (void);
从单片机串口读入一个字符,然后等待字符输入
2、extern char getchar (void);
该函数使用_getkey()函数从串口读入字符,并将读入的字符马上给putchar()函数输出
3、extern char ungetchar (char);
将输入的字符回送输入缓冲区,成功返回char,否则返回EOF
4、extern char putchar (char);
通过单片机的串口输出字符,与_getkey()函数一样
5、extern int printf (const char *, ...);
以一定的格式通过单片机串行口输出数值和字符串,返回值为实际输出的字符数
6、extern int sprintf (char *, const char *, ...);
通过一个指针S将数据送人可寻址的内存缓冲区,并以ASCII码的形式存储
7、extern int vprintf (const char *, char *);
8、extern int vsprintf (char *, const char *, char *);
9、extern char *gets (char *, int n);
10、extern int scanf (const char *, ...);
11、extern int sscanf (char *, const char *, ...);
12、extern int puts (const char *);
三、string.h
1、extern char *strcat (char *s1, char *s2);
2、extern char *strncat (char *s1, char *s2, int n);
3、extern char strcmp (char *s1, char *s2);
4、extern char strncmp (char *s1, char *s2, int n);
5、extern char *strcpy (char *s1, char *s2);
6、extern char *strncpy (char *s1, char *s2, int n);
7、extern int strlen (char *);
8、extern char *strchr (const char *s, char c);
9、extern int strpos (const char *s, char c);
10、extern char *strrchr (const char *s, char c);
11、extern int strrpos (const char *s, char c);
12、extern int strspn (char *s, char *set);
13、extern int strcspn (char *s, char *set);
14、extern char *strpbrk (char *s, char *set);
15、extern char *strrpbrk (char *s, char *set);
16、extern char *strstr (char *s, char *sub);
17、extern char *strtok (char *str, const char *set);
18、extern char memcmp (void *s1, void *s2, int n);
19、extern void *memcpy (void *s1, void *s2, int n);
20、extern void *memchr (void *s, char val, int n);
21、extern void *memccpy (void *s1, void *s2, char val, int n);
22、extern void *memmove (void *s1, void *s2, int n);
23、extern void *memset (void *s, char val, int n);
四、stdlib.h
1、extern int abs (int val);
2、extern long labs (long val);
3、extern float atof (char *s1);
将字符串转换成浮点数
4、extern long atol (char *s1);
将字符串转换成长整型
5、extern int atoi (char *s1);
将字符串转换成整型
6、extern int rand ();
取一个0~32767之间的随机数
7、extern void srand (int);
根据种子seed的值取随机数
8、extern float strtod (char *, char **);
9、extern long strtol (char *, char **, unsigned char);
将字符串转换成长整数
10、extern unsigned long strtoul (char *, char **, unsigned char);
将字符串转换成无符号长整数
#define _MALLOC_MEM_ xdata
11、extern void init_mempool (void _MALLOC_MEM_ *p, unsigned int size);
初始化内存池
12、extern void _MALLOC_MEM_ *malloc (unsigned int size);
申请一块大小为size的内存
13、extern void free (void _MALLOC_MEM_ *p);
释放一块被申请的内存
14、extern void _MALLOC_MEM_ *realloc (void _MALLOC_MEM_ *p, unsigned int size);
重新申请一块大小为size的内存
15、extern void _MALLOC_MEM_ *calloc (unsigned int size, unsigned int len);
申请有size个元素的,每个元素的大小为len的数组
五、math.h
1、extern char cabs (char val);
计算并返回val的绝对值,为char型
2、extern int abs (int val);
计算并返回val的绝对值,为int型
3、extern long labs (long val);
计算并返回val的绝对值,为long型
4、extern float fabs (float val);
计算并返回val的绝对值,为float型
5、extern float sqrt (float val);
返回x的正平方根
6、extern float exp (float val);
计算e为底x的幂并返回计算结果
7、extern float log (float val);
返回自然对数
8、extern float log10 (float val);
返回以10为底的对数
9、extern float sin (float val);
10、extern float cos (float val);
11、extern float tan (float val);
以上3个函数返回相应的三角函数值,所有的变量范围在-π/2 ~ +π/2之间,否则会返回错误
12、extern float asin (float val);
13、extern float acos (float val);
14、extern float atan (float val);
返回相应的反三角函数值,值域为-π/2 ~ +π/2
15、extern float sinh (float val);
16、extern float cosh (float val);
17、extern float tanh (float val);
返回x的相应的双曲函数值
18、extern float atan2 (float y, float x);
返回x/y的反正切值,值域为-π ~ +π
19、extern float ceil (float val);
返回一个不小于val的最小整数(作为浮点数)
20、extern float floor (float val);
返回一个不大于val最大整数(作为浮点型)
21、extern float modf (float val, float *n);
将浮点数val分为整数和小数两部分,两者的符号与val相同,整数部分放入*n,小数部分作为返回值
22、extern float fmod (float x, float y);
返回x/y的余数
23、extern float pow (float x, float y);
返回x的y次方
六、absacc.h
以下4个宏定义,对单片机的进行绝对地址访问,可以作为字节寻址,CBYTE寻址code区,DBYTE寻址data区,PBYTE寻址分页xdata区,XBYTE寻址xdata区
1、#define CBYTE ((unsigned char volatile code *) 0)
2、#define DBYTE ((unsigned char volatile data *) 0)
3、#define PBYTE ((unsigned char volatile pdata *) 0)
4、#define XBYTE ((unsigned char volatile xdata *) 0)
以上4个宏定义与上面4个功能类似,只是数据类型是unsigned int型
5、#define CWORD ((unsigned int volatile code *) 0)
6、#define DWORD ((unsigned int volatile data *) 0)
7、#define PWORD ((unsigned int volatile pdata *) 0)
8、#define XWORD ((unsigned int volatile xdata *) 0)
七、intrins.h
1、extern void _nop_ (void);
空操作指令,需要一个指令周期
2、extern bit _testbit_ (bit);
该函数对字节中的一个比特进行测试,如果该比特为1则返回1,并置该位为0,否则返回0
3、extern unsigned char _cror_ (unsigned char, unsigned char);
4、extern unsigned int _iror_ (unsigned int, unsigned char);
5、extern unsigned long _lror_ (unsigned long, unsigned char);
将第一个参数循环右移n位,3个函数的参数和返回值类型不同
6、extern unsigned char _crol_ (unsigned char, unsigned char);
7、extern unsigned int _irol_ (unsigned int, unsigned char);
8、extern unsigned long _lrol_ (unsigned long, unsigned char);
将第一个参数循环左移n位,3个函数的不同在于参数和返回值的类型
9、extern unsigned char _chkfloat_(float);
10、extern void _push_ (unsigned char _sfr);
11、extern void _pop_ (unsigned char _sfr);
八、setjmp.h
typedef char jmp_buf[_JBLEN];
1、 extern volatile int setjmp (jmp_buf);
2、extern volatile void longjmp (jmp_buf, int);
因篇幅问题不能全部显示,请点此查看更多更全内容