為了更好地理解string的各個庫函式,現將幾個常用的庫函式用自己的方式實現如下:
#includeusing namespacestd;#include//求字串的長度 (注:'\0'的長度不計算在內)
int my_strlen(char*str)
int len = 0;
while (*str++ != '\0')// '\0'不計算在內
returnlen;
}//string比較函式
int my_strcmp(const char* str1, const char*str2)
str1++;
str2++;
}if (result > 0)
result = 1;
else if (result < 0)
result = -1;
returnresult;
}//查詢str2是否為str1的字串,並返回str2在str1中第一次出現的位置
const char* my_strstr(const char* str1, const char*str2)}}
elseps1++;
}returnnull;
}//字串拷貝函式
char* my_strcpy(char* dst, const char*src)
returndst;
}//string 連線函式
char* my_strcat(char* dst, const char*src)
while (*psrc != '\0')
*pdst = '\0';
returndst;
}intmain()
自己編寫的string庫函式
都是自己編寫的,僅供學習參考。date 2009.6.24 author summon function functions for string.h version v1.0 right all right opened char mystrcpy char pchdest,const char ...
string部分庫函式的實現
1 模擬實現strcpy 思路分析 源字串的字元逐個賦值給目標字串 如下 include include char my strcpy char dest,const char src return ret int main my strcpy arr2,arr1 printf 拷貝完成後的字串 s...
c語言,string庫函式strstr實現
說明 原型 char strstr char haystack,char needle 用法 include 功能 從字串haystack中尋找needle第一次出現的位置 不比較結束符null 說明 返回指向第一次出現needle位置的指標,如果沒找到則返回null。函式mystrstr是我自己寫...