常用ANSI C语言标准库函数汇总(二)

常用ANSI C语言标准库函数汇总(二)


3.字符串函数

使用字符串函数时,应该在源文件中使用预编译命#include “string.h”

函数名 函数原型 功能 返回值
memchr void memchr(void *buf,char ch,unsigned count) 在buf的前count个字符里搜索字符ch首次出现的位置 返回指向buf中ch的第一次出现的位置指针,若没有找到ch返回NULL
memcmp void memcmp (void *buf1,void *buf2,unsigned count) 按字典顺序比较由buf1和buf2指向的数组的前count个字符 buf1 < buf2,为负数 buf1=buf2,返回0 buf1 > buf2,为正数
memcpy void *memcpy (void *to,void *from,unsigned count) 将from指向的数组中的前count个字符复制到to指向的数组中(from和to指向的数组不允许重叠) 返回指向to的指针
memove void *memove (void *to,void *from,unsigned count) 将from指向的数组中的前count个字符复制到to指向的数组中(from和to指向的数组不允许重叠) 返回指向to的指针
memset void *memset (void *buf,char ch,unsigned count) 将字符ch复制到buf指向的数组前count个字符中 返回buf
strcat char *strcat (char *str1,char *str2) 把字符串str2接到sht1后面,取消原来str1最后面的串结束符“\0” 返回str1
strchr char *strchr (char *str,int ch) 找出str指向的字符串中第一次出现字符ch的位置 返回指向该位置的指针,如找不到,则返回NULL
strcmp char *strcmp (char *str1,char *str2) 比较字符串str1和str2 若str1 < str2,为负数 str1=str2 返回0 str1 > str2,为正数
strcpy char *strcpy (char *str1,char *str2) 把str2指向的字符串复制到str1中去 返回str1
strlen unsigned intstrlen(char *str) 统计字符串str中字符的个数(不包括结束符“\n”) 返回字符个数
strncat char *strncat (char *str1,char *str2,unsigned count) 把字符串str2指向的字符串中最多count个字符连到串str1后面,并以NULL结尾 返回str1
strncmp char *strncmp (char *str1,char *str2,unsigned count) 比较字符串str1和str2中前count个字符 若str1 < str2,为负数 str1=str2 返回0 str1 > str2,为正数
strncpy char *strncpy (char *str1,char *str2,unsigned count) 把字符串str2指向的字符串中前count个字符复制到串str1中去 返回str1
strnset void *strnset (char *buf,char ch,unsigned count) 把字符ch复制到buf指向的数组前count个字符中 返回buf
strset void *strset (char *buf,char ch) 将buf所指向的字符串中的全部字符都变为字符ch 返回buf
strstr void *strstr (char *str1,char *str2) 寻找str2指向的字符串在str1指向的字符串中首次出现的位置 返回str2指向的字符串啊首次出现的地址,否则返回NULL

4.动态存储分配函数

使用动态存储分配函数时,应该在源文件中使用预编译命令:#include “stdlib.h”

函数名 函数原型 功能 返回值
calloc void *calloc(unsigned n,unsigned size) 分配n个数据项的内存连续空间,每个数据项的大小为size 分配内存单元的起始地址,如不成功,返回0
free void free (void *p) 释放p所指内存区
malloc void *malloc (unsigned size) 分配size字节的内存区 返回所分配的内存区地址,如内存不够,返回0
realloc void *realloc (void *p,unsigned size) 将p所指的已分配的内存区的大小改为size,size可以比原来分配的空间大或小 返回指向该内存区的指针,若重新分配失败,返回NULL

5.其他函数

有些函数由于不便于归入某一类,所以单独列出。使用这些函数时,应该在源文件中使用预编译命令#include “stdlib.h”

函数名 函数原型 功能 返回值
abs int abs(int num) 计算整数num的绝对值 返回计算结果
atof double atof (char *str) 将str指向的字符串转换为一个double型的值 返回双精度计算结果
atoi int atoi (char *str) 将str指向的字符串转换为一个int型的值 返回转换结果
atol long atol (char *str) 将str指向的字符串转换为一个long型的值 返回转换结果
exit void exit (int status) 中止程序运行。将status的值返回调用的过程
itoa char *itoa (int n,char *str,int radix ) 将整数n的值按照radix进制转换为等价的字符串,并将结果存入str指向的字符串 返回一个指向str的字符串
labs long labs(long num) 计算long型整数num的绝对值 返回计算结果
ltoa char *ltoa (long n,char *str,int radix ) 将长整数n的值按照radix进制转换为等价的字符串,并将结果存入str指向的字符串 返回一个指向str的字符串
rand int rand() 产生0到RAND_MAX之间的伪随机数(RAND_MAX在头文件中定义) 返回一个伪随机(整)数
random int random(int num) 产生0到num之间的随机数 返回一个随机(整)数
randomize int randomize() 初始化随机函数,使用时包括头文件time.h

你可能感兴趣的:(常用ANSI C语言标准库函数汇总(二))