字符,字符串相关函数是什么,字符,字符串相关函数是什么
永远的神干货盘点
1.strlen:求字符串长度,不包含\0;函数原型:szie _ t strlen(const char * str);
模拟实现字符长度(字符串长度)函数
int my_strlen(const char* str)
{
int count=0;
while(*str)
{
数数;
潜艇用热中子反应堆(submarine thermal reactor的缩写)
}
返回计数;
}2.strcpy:字符串拷贝函数原型:char * strcpy(char* destination,const char * source);
模拟实现拷贝字符串函数
char* my_strcpy(char* dest,const* src)
{
char * ret=dest
断言(dest!=NULL);
断言(src!==NULL);
while((*dest=*src))
{
;
}
返回0;
}3.strncpy:将科学研究委员会所指向的字符串中n个字符拷贝到建筑环境及(同high-voltagealternatingcurrent)高压交互电流系统模拟的软件平台所指向的字符串中函数原型:char *strncpy(char *dest,const char *src,size _ t n);
模拟实现strnpy函数
char* my_strncpy(char*dest,const char* src,size_t n)
{
断言(dest src);
char * cp=dest
while(n (*cp=*src))
{
n-;
}
当(名词)
{
* cp= \ 0
n-;
}
返回目的地;
}4.strcmp:字符串比较函数函数原型:int strcmp(const char* str1,const char * str 2);
模拟实现串比较函数
int my_strcmp(char* str1,char* str2)
{
断言(str 1 str 2);
while(*str1==*str2)
{
if(*str2==\0 )
{
返回0;
}
其他
{
str1
str2
}
}
if(*str1 str2)
{
返回1;
}
if(*str1 *str2)
{
return-1;
}
}5.strncmp:比较出现另一个字符不一样或者一个字符串结束或者n个字符全部比较完函数原型:int strncmp(const char *s1,const char *s2,size _ t n);
模拟实现按长度对字符串比较函数
int my_strncmp(const char* str1,const char* str2,size_t n)
{
断言(str 1 str 2);
while(*str1==*str2 n)
//当str1和str2相等并且n不为0时进入循环体
{
str1
str2
n-;
if(*str2==\0num==0)
返回0;
}
if(*str1 *str2)
{
返回1;
}
其他
return-1;
}6.strcat:追加字符串函数原型:char* strcat(char*目的地,常量字符*源)
模拟实现字符串连接函数函数
char* my_strcat(char* dest,const char* src)
{
断言(dest src);
char * ret=dest
while(*dest!=\0)
{
建筑环境及HVAC系统模拟的软件平台
}
while(*dest==*src )//实现将科学研究委员会拷贝到建筑环境及(同high-voltagealternatingcurrent)高压交互电流系统模拟的软件平台后面
{
;
}
返回浸水使柔软
}7.strncat:在建筑环境及(同high-voltagealternatingcurrent)高压交互电流系统模拟的软件平台指向的字符串末尾加上n个科学研究委员会所指向的字符串函数原型:char *strncat(char *dest,const char *src,size _ t n);
模拟实现按长度连接字符串
char* my_srtncat( char *dest,const char *src,size_t n)
{
断言(dest src);
char * ret=dest
while(*ret)
{
* ret
}
while(n -)
{
* ret=* src
if(*src==\0 )
返回目的地;
}
* cp= \ 0
返回目的地;
}8.strstr:判断子串函数原型:char *strstr(const char *haystack,const char * needle);
模拟实现字符串查找函数
char* my_strstr(const char* str1,const char* str2)
{
断言(str 1 str 2);
char * s1=NULL//使str1和str2的指向不发生改变
char * s2=NULL
char * CP=(char *)str 1;
while(*cp)//遍历str1
{
s1=cp
S2=(char *)str 2;
while(*s1==*s2 *s1 *s2)
{
S1;
S2;
if(*s2==\0 )
返回CP;
}
CP;
}
返回空
}9.strerror:返回错误码所对应的错误信息函数原型:char * strerror(int errnum);
#包含错误号h
#包含标准视频
#包含字符串。h
int main()
{
FILE *fp=fopen(student.txt , r );
if(fp==NULL)
printf(%s\n ,strerror(errno));
fclose(FP);
返回0;
}
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。