一.比较函数
(一)函数名: strcmp()
头文件:string.h
函数声明
int strcmp(const char* stri1,const char* str2);
参数 str1 和 str2 是参与比较的两个字符串。
strcmp() 会根据 ASCII 编码依次比较 str1 和 str2 的每一个字符,直到出现不到的字符,或者到达字符串末尾(遇见\0),这里需要注意在我们日常开发中,系统等等各方面可能存在问题啥的 有点时候是要注意"\r\n"的问题。(惨痛教训)
返回值:
如果返回值 < 0,则表示 str1 小于 str2。
如果返回值 > 0,则表示 str2 小于 str1。
如果返回值 = 0,则表示 str1 等于 str2。
(二)自己改写C语言比较函数
int comparison(const char *data0,const char *data1, int len )
{
const char *data2;
const char *data3;
data2= data0;
data3= data1;
while ( len-- )
{
if( *data2++ != *data3++ )
return 0;
}
return 1;
}
函数解读:
输入字符串data0,data1,还要要比较的长度,还有要比较的值,这时候就可以随意比较长度了。
二.检索字符串函数
函数名:strstr()
头文件:string.h
函数声明
char *strstr(char *str1, const char *str2);
str1: 被查找目标 str2: 要查找对象
返回值:若str2是str1的子串,则返回str2在str1的首次出现的地址;如果str2不是str1的子串,则返回NULL。(个人觉得好用的一笔)
三.字符串输出函数
han函数名:sprintf()
头文件:stdio.h
函数声明:
int sprintf(char *str, const char *format, ...)
str :这是指向一个字符数组的指针,该数组存储了 C 字符串。
format :这是字符串,包含了要被写入到字符串 str 的文本。它可以包含嵌入的 format 标签,format 标签可被随后的附加参数中指定的值替换,并按需求进行格式化。
format 向str 打印
四.复制函数
函数名:memcpy()
头文件:string.h
函数声明:
void *memcpy(void *str1, const void *str2, size_t n)
str1 : 指向用于存储复制内容的目标数组,类型强制转换为 void* 指针。
str2 : 指向要复制的数据源,类型强制转换为 void* 指针。
n :要被复制的长度。
五.初始化函数
函数名: memset()
头文件:string.h
函数声明:
void *memset(void *str, int c, size_t n)
str : 指向被填充的内存。
c :要被设置的值。该值以 int 形式传递,但是函数在填充内存块时是使用该值的无符号字符形式。
n :长度。
我经常用于初始化
返回值:返回一个指向存储区 str 的指针。