C语言中常用的库函数

1.      内存操作

1)         内存设置

函数原型

void *memset(void *point, char value, unsigned Length)

函数功能

将point所指向的内存空间的前Length个字节设置为value值。

参数介绍

point: 指向缓存首地址

value: 需要设置的数值

Length: 设置缓存的字节个数

返回值

返回point.

头文件

<memory.h> or <string.h>

2)         内存拷贝

函数原型

void *memcpy(void *dest, void *src, unsigned int size)

函数功能

拷贝数据:由src指向地址为起始地址的连续size个字节的数据复制到以dest指向地址为起始地址的空间内;destsrc所指的内存区域不能重叠。 重叠和不可重叠见 后面的随笔 memmove介绍.

参数介绍

dest: 目的指针

src:  源操作数指针

size:  需要拷贝的字节数

返回值

返回dest.

头文件

<memory.h> or <string.h>

3)         内存比对

函数原型

int memcmp(void *buf1, void *buf2, unsigned int size)

函数功能

比较内存区域buf1和buf2的前size个字节。

参数介绍

buf1: 内存区域

buf2: 内存区域

size:  需要比较的字节数

返回值

返回比较的结果:

  当buf1<buf2时,返回<0

  当buf1=buf2时,返回=0

  当buf1>buf2时,返回>0

头文件

<memory.h> or <string.h>

 

4)         内存分配

函数原型

void *malloc(unsigned int Length)

函数功能

申请内存。

参数介绍

Length:申请内存空间的长度

返回值

返回所申请内存的首地址。

头文件

<stdlib.h> and <malloc.h>

5)         内存释放

函数原型

void free(void *point)

函数功能

释放内存。

参数介绍

point:内存首地址。

返回值

头文件

<stdlib.h> and <malloc.h>

2.      字符串操作

6)         将字符串转换为长整型数

函数原型

long strtol(const char *nptr, char **endptr, int base)

函数功能

  以某种进制的方式将字符串转换为长整型数。strtol()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,再遇到非数字或字符串结束时('\0')结束转换,并将结果返回。

参数介绍

nptr:字符串首地址。

 

endptr:若参数endptr不为NULL,则会将遇到不合条件而终止的nptr中的字符指针由endptr返回。(传值时可用NULL代替)

 

base:代表所采用的二进制数,如0、2、8、10、16等,采用0时,代表十进制数。

返回值

为长整型数。

头文件

<stdlib.h>

7)         将字符串转换为无符号长整型数

函数原型

long strtoul(const char *nptr, char **endptr, int base)

函数功能

  以某种进制的方式将字符串转换为长整型数。strtoul()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,再遇到非数字或字符串结束时('\0')结束转换,并将结果返回。

参数介绍

nptr:字符串首地址。

 

endptr:若参数endptr不为NULL,则会将遇到不合条件而终止的nptr中的字符指针由endptr返回。(传值时可用NULL代替)

 

base:代表所采用的二进制数,如0、2、8、10、16等,采用0时,代表十进制数。

返回值

为无符号长整型数。

头文件

<stdlib.h>

 

8)         查找字符串S中首次出现字符C的位置

函数原型

char *strchr(const char *s, char c)

函数功能

  查找字符串s中首次出现字符c的位置;返回首次出现c的位置

的指针,如果s中不存在c则返回NULL。

参数介绍

s:字符串首地址。

c:所要查找的字符。

返回值

返回首次出现字符c的位置的指针。

头文件

<string.h>

 

9)         查找字符串haystack中首次出现字符串needle的位置 

函数原型

char *strstr(char *haystack, char *needle)

函数功能

  查找字符串haystack中首次出现字符串needle的位置;返回首次出现字符串

needle的位置的指针,如果haystack中不存在字符串needle则返回NULL。

参数介绍

haystack:字符串首地址。

needle:所要查找的字符串。

返回值

返回首次出现字符串needle的位置的指针。

头文件

<string.h>

10)         strdup复制字符串  

函数原型

char *strdup(char *s)

函数功能

复制字符串s

参数介绍

s:被复制的字符串的首地址。

返回值

返回指向被复制的字符串的指针,所需空间由malloc()分配且可以由free()释放。

头文件

<string.h>

 

原文地址:https://www.cnblogs.com/xiehy/p/1662602.html