几个常用函数的实现strcpy,memcpy,memmove,strcat,strcmp
来源:互联网 发布:淘宝风格馆店铺形象图 编辑:程序博客网 时间:2024/05/17 01:34
1. strcpy
函数原型: char * strcpy(char * strDest,const char * strSrc); 具体实现: char * strcpy(char * strDest,const char * strSrc) { if(strDest == NULL ||strSrc == NULL) throw "Error copy !"; char *strTemp = strDest; while((*strDest++ = *strSrc++) != '\0') ; return strTemp; }
2. strcat
函数原型:char* strcat(char* strDest, const char* strSrc);具体实现:char* strcat(char* strDest, const char* strSrc){if(strDest == NULL || strSrc == NULL)throw "concat Error!";char* strTemp = strDest;while(*strTemp++ != '\0');while((*strTemp++ = *strSrc++) != '\0');return strDest;}
函数原型:int strcmp(const char* strDest, const char* strSrc);具体实现:int strcmp(const char* strDest, const char* strSrc){int nRet = 0;if(strDest == NULL || strSrc == NULL)throw "compare Error!";while(!(nRet = (*strDest - *strSrc)) && strSrc) {++strDest;++strSrc;}if (nRet > 0){nRet = 1;}else if (nRet < 0){nRet = -1;}return nRet;}
返回值:
* returns -1 if strDest < strSrc* returns 0 if strDest == strSrc* returns +1 if strDest > strSrc
函数原型:void *memcpy(void* pvTo, void* pvFrom, size_t size);具体实现:void *memcpy(void* pvTo, void* pvFrom, size_t size){if(pvFrom == NULL || pvTo == NULL)throw "memcpy Error!";void* pvTempTo = pvTo;void* pvTempFrom = pvFrom;if (pvFrom < pvTo + size && pvTo < pvFrom + size)throw "memcpy Error!";while(size-- > 0){*pvTempTo++ = *pvTempFrom++;}return pvTo;}
5. memmove
函数原型:void* memmove(void* dest, void* source, size_t size);具体实现:void* memmove(void* dest, void* source, size_t size){if (dest == NULL || source == NULL)throw "memmove Error!";void * destTemp = dest;if (dest >= (source + size) || source >= (dest + size)){while(size-- > 0)*dest++ = *source++;}else{dest += size - 1;source += size - 1;*dest-- = *source--;}return destTemp;}
- 几个常用函数的实现strcpy,memcpy,memmove,strcat,strcmp
- strcpy,strcmp,strstr,strcat,memcpy,memmove的模拟实现
- 字符串函数的原型实现(strcpy, strcat, strcmp, memset, memcpy, memmove)
- memcmp,memcpy,memmove,memset,strcat,strcmp,strcpy,strlen 8个函数的实现
- 字符串处理函数的模拟实现(strlen、strstr、strcat、strcmp、strcpy、memmove、memcpy)
- strlen函数 strcpy函数 strcmp函数 strstr函数 strcat函数 memcpy函数 memmove函数 以及字符串反转函数的实现
- strcpy,strcat,strstr,strcmp,memmove的实现
- 模拟实现strstr,strcpy,strlen,strcat,strcmp,memcpy,memmove
- 模拟实现: strstr strcpy strlen strcat strcmp memcpy memmove
- 模拟实现strcpy,strncpy,strcat,strncat,strcmp,strncmp,memcpy,memmove
- 模拟实现strlen,strcpy,strcat,strcmp,strstr,memcpy,memmove
- 模拟实现strcpy ,strstr,strcat,strcmp,memcpy,memmove
- 模拟实现strcpy、strcat、strstr、strchr、strcmp、memcpy、memmove
- strcat,strcmp,memcpy,strcpy函数实现
- C基础:strcat,strcmp,memcpy,strcpy等函数的实现
- strcat,strcmp,memcpy,strcpy等函数的实现
- 模拟实现strcmp,strncmp,strstr,strcat,strncat,strcpy,strncpy,strlen ,memcpy,memmove等函数
- 字符串函数模拟实现(strcpy,strcat,strstr,strchr,strcmp,memcpy,memmove)
- ZOJ2676 Network Wars
- linux2.6内核Makefile详解
- zoj 3432 Find the Lost Sock
- 空中网4k/5k月薪挑选大四实习生的线程题
- bind与eval
- 几个常用函数的实现strcpy,memcpy,memmove,strcat,strcmp
- Sql Server 2005 用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联
- 矩阵
- 子贡教范蠡“人弃我取,人取我与”
- 浅谈Scrum
- div最顶层
- GUID
- 去除EditText自动获得的焦点
- 面试题---使用栈stack实现队列queue