c字符串函数源代码
1
. strlen(),计算字符串长度
int
strlen(
const
char
string
)
...
{ int i=0; while(string[i]) i++; return i; }
2
. strcpy(), 字符串拷贝.
char
*
strcpy(
char
*
destination,
const
char
*
source)
...
{ while(*destinaton++=*source++); return (destination-1); }
3
. strcat(), 字符串的连接.
char
*
strcat(
char
*
target,
const
char
*
source)
...
{ char *original=target; while(*target) target++; // Find the end of the string while(*target++=*source++); return(original); }
4
. streql(), 判断两个字符串是否相等.
int
streql(
char
*
str1,
char
*
str2)
...
{ while((*str1==*str2)&&(*str1)) ...{ str1++; str2++; } return((*str1==NULL)&&(*str2==NULL)); }
5
. strchr(), 在字符串中查找某个字符.
char
*
strchr(
const
char
*
string
,
int
letter)
...
{ while((*string!=letter)&(*string)) string++; return (string); }
6
. chrcnt(), 计算某个字符在字符串中出现的次数.
int
chrcnt(
const
char
*
string
,
int
letter)
...
{ int count=0; while(*string) if(*string==letter){count++; string++;} return count; }
7
. strcmp(), 判断两个字符串是否相等.
int
strcmp(
const
char
*
str1,
const
char
*
str2)
...
{ while((*str1==*str2)&&(*str1)) ...{ str1++; str2++; } if((*str1==*str2)&&(!*str1)) //Same strings return o; else if((*str1)&&(!*str2)) //Same but str1 longer return -1; else if((*str2)&&(!*str1)) //Same but str2 longer else return((*str1>*str2)?-1:1); }