C语言中操作字符串的一些函数源代码
2012-05-13 10:45
344 查看
很多人认为C语言中的难点是指针,对指针的理解直接关系到所编程序的好坏,所以,
在这里列举了一些C编译器通常都有的标准函数的源代码,看过它们,就能对指针和字符串有所了解了.
1. strlen(),计算字符串长度
int strlen(const char string)
{
int i=0;
while(string[i])
i++;
return i;
}
2. strcpy(), 字符串拷贝.
char *strcpy(char *strDestination, const char *strSource)
{
assert(strDestination && strSource);
char *strD=strDestination;
while ((*strDestination++=*strSource++)!='\0')
NULL;
return strD;
}
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++;
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 0;
else if ((*str1)&&(!*str2)) //Same but str1 longer
return -1;
else if ((*str2)&&(!*str1)) //Same but str2 longer
return 1;
else
return ((*str1>*str2)?-1:1);
}
在这里列举了一些C编译器通常都有的标准函数的源代码,看过它们,就能对指针和字符串有所了解了.
1. strlen(),计算字符串长度
int strlen(const char string)
{
int i=0;
while(string[i])
i++;
return i;
}
2. strcpy(), 字符串拷贝.
char *strcpy(char *strDestination, const char *strSource)
{
assert(strDestination && strSource);
char *strD=strDestination;
while ((*strDestination++=*strSource++)!='\0')
NULL;
return strD;
}
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++;
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 0;
else if ((*str1)&&(!*str2)) //Same but str1 longer
return -1;
else if ((*str2)&&(!*str1)) //Same but str2 longer
return 1;
else
return ((*str1>*str2)?-1:1);
}
相关文章推荐
- C语言中操作字符串的一些函数源代码
- C语言中操作字符串的一些函数源代码
- C语言中操作字符串的一些函数源代码
- 【转贴】C语言中操作字符串的一些函数源代码
- C语言中操作字符串的一些函数源代码[转]
- C语言中操作字符串的一些函数源代码
- C语言中操作字符串的一些函数源代码
- C语言中操作字符串的一些函数源代码
- C 语言中操作字符串的一些函数源代码
- C 语言中操作字符串的一些函数源代码(对比版)
- C 语言中操作字符串的一些函数源代码(修改版)
- C 语言中操作字符串的一些函数源代码
- 字符串中的一些基本操作函数(c语言)
- C语言字符串操作函数
- 黑马程序员——C语言之字符串操作函数与内存管理
- C语言常用的字符串操作函数
- C语言字符串操作函数-原型
- c语言中字符串操作的函数
- Postgresql数据库的一些字符串操作函数(转)
- C语言字符串操作函数