几个常见字符串函数的实现
来源:互联网 发布:手机淘宝怎么登陆卖家 编辑:程序博客网 时间:2024/04/30 09:16
1、实现strstr函数
char *strcpy(char *dest,char *src);
功能:把src所指由NULL结束的字符串复制到dest所指的数组中。
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
const char * pstrstr(const char *haystack, const char *needle){ const char *p1, *p2; p1 = haystack; p2 = needle; while (*haystack != '/0' && *needle != '/0') { if (*haystack++ != *needle++) { needle = p2; haystack = ++p1; //从下一个字符开始搜索needle } } if (*needle == '/0') return p1; return NULL;}
char *strstr(const char *strSrc, const char *str) { assert(strSrc != NULL && str != NULL); const char *s = strSrc; const char *t = str; for (; *strSrc != '/0'; ++ strSrc) { for (s = strSrc, t = str; *t != '/0' && *s == *t; ++s, ++t) NULL; if (*t == '/0') return (char *) strSrc; } return NULL; }
2、实现strcpy函数
char *strcpy(char *dest,char *src);
功能:把src所指由NULL结束的字符串复制到dest所指的数组中。
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
src字符串尾的字符串结束标识符'/0'也会被复制过去,复制完成后s1中的内容会被覆盖掉
char * strcpy( char *strDest, const char *strSrc ) { assert( (strDest != NULL) && (strSrc != NULL) ); char *address = strDest; while( (*strDest++ = * strSrc++) != '/0' ); return address;}
int strcmp(const char *s, const char *t) { assert(s != NULL && t != NULL); while (*s && *t && *s == *t) { ++ s; ++ t; } return (*s - *t); }
3、实现strlen函数int strlen(const char *str) { assert(str != NULL); int len = 0; while (*str ++ != '/0') ++ len; return len; }
4、实现strlen函数
//查找字符串s中首次出现字符c的位置 char *strchr(const char *str, int c) { assert(str != NULL); for (; *str != (char)c; ++ str) if (*str == '/0') return NULL; return str; }5、实现strcny函数
char *strncpy(char *strDes, const char *strSrc, unsigned int count) { assert(strDes != NULL && strSrc != NULL); char *address = strDes; while (count-- && *strSrc != '/0') *strDes++ = *strSrc++; *strDes = '/0'; return address; }
阅读全文
0 0
- 几个常见字符串函数的实现
- 几个常见字符串函数的实现
- 几个常见字符串处理函数的实现原理
- 常见几个字符串函数实现代码
- 几个常见的字符串处理函数
- 几个字符串函数的实现
- 几个字符串函数的实现
- 常见字符串函数的实现
- 几个字符串函数指针的实现
- 常见字符串函数实现
- 字符串中常见函数的实现_legend
- 常见字符串函数的实现过程
- 几个常见的字符串HASH
- cstring中常见的几个函数仿真实现
- 实现几个字符串常用函数
- 几个常见的C函数
- 常见的字符串函数
- 几个常考的关于字符串的函数实现
- 悲观锁以及乐观锁使用场景
- [PAT乙级]1011. A+B和C (15)
- IntelliJ IDEA使用(二):tomcat和jetty配置(转自:http://www.cnblogs.com/jenkinschan/p/6052948.html)
- Spring MVC 流程图
- ejs模版学习-- ejs的大概使用
- 几个常见字符串函数的实现
- 原生js实现红球碰撞篮球效果
- 2017 Multi-University Training Contest
- 【HDU2037】 今年暑假不AC(贪心,sort)
- 自学Unity3D游戏开发(1)
- 面试记录-数据开发/算法/JAVA
- Java 高并发基础
- 2017 Multi-University Training Contest
- 26. Remove Duplicates from Sorted Array