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指向地址为起始地址的空间内;dest和src所指的内存区域不能重叠。 重叠和不可重叠见 后面的随笔 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> |