1.strlen
size_t strlen (const char* str);
①.字符串以'\0'作为结束标志,strlen函数返回的是在字符串中'\0'前出现的字符个数(不包含'\0');
②.参数指向的字符串必须要以'\0'结束;
③.函数的返回值是无符号的(size_t).
2.strcpy
char* strcpy(char* dest,const char* source); -------- dest 目标 source 源字符
①.源字符必须以'\0'结束;
②.目标空间必须足够大,以确保能存放源字符串.;
③.会将源字符中的'\0'拷贝到目标函数;
④.目标空间必须可变.
3.strcat
char* strcat (char* dest,const char* source);
①.源字符必须以'\0'结束;
②.目标空间必须足够大,以能容纳下源字符的内容;
③.目标空间必须可修改.
4.strcmp
int strcmp (const char* str1,const char* str2);
①.第一个字符串大于第二个字符串,则返回大于0的数字;
②.字符串相等,则返回0;
③.第一个字符串小于第二个字符串,则返回小于0的数字;
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。
5.memcpy
void* memcpy (void* dest, const void * source,size_t num);
①.函数memcpy从source的位置开始向后复制num个字节的数据到dest的内存位置;
②.这个函数在遇到'\0'的时候并不会停下来;
③.如果source和dest有任何的重叠,复制的结果都是未定义的.6.
6.memmove
void* memmove(void* dest,const void* source,size_t num);
①.和memcpy的差别就是该函数处理的源内存块和目标内存块是可以重叠的;
②.如果源空间和目标空间出现重叠,就得使用该函数处理.
7.memcmp
int memcmp(const void* ptr1,const void* ptr2,sizt_t num);
①.比较从ptr1和ptr2指针开始的前num个字节(也就是比较前num个字节asc||码值);
②.返回值: 如果ptr1 > ptr2,则返回一个大于0的数;
如果ptr1 < ptr2,则返回一个小于0的数;
如果ptr1 = ptr2,则返回0;