一些常見的字符串處理函數(shù)實(shí)現(xiàn)
七里河網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,七里河網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為七里河上1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的七里河做網(wǎng)站的公司定做!
字符串拷貝
char* strcpy(char* strDest,const char* strSrc) { assert(strDest!=NULL && strSrc!=NULL); char* strTmp = strDest; while(*strSrc!='\0') { *strDest++ = *strSrc++; } strDest = '\0'; return strTmp; }
內(nèi)存拷貝
void * memcpy(void* strDest,void* strSrc,size_t size) { assert(strDest!=NULL && strSrc != NULL); void* strTmp = strDest; //考慮內(nèi)存重疊情況 類似memmove if (strDest<=strSrc || (char*)strDest >= (char*)strSrc+size) { while(size--) { *(char*)strDest = *(char*)strSrc; strDest = (char*)strDest + 1; strSrc = (char*)strSrc + 1; } } else { strDest = (char*)strDest+size-1; strSrc = (char*)strSrc +size-1; while(size--) { *(char*)strDest = *(char*)strSrc; strDest = (char*)strDest-1; strSrc = (char*)strSrc-1; } } return strTmp; }
求字符串大小
int strlen(const char*strSrc) { assert(strSrc!= NULL); int len = 0; while((*strSrc++) != '\0') ++len; return len; }
兩字符串連接
char* strcat(char* strDest,const char* strSrc) { assert((strDest != NULL) && (strSrc != NULL)); char* strTmp = strDest; while(*strDest != '\0') ++strDest; while(*strDest++ = *strSrc++) ; *strDest++ = '\0'; return strDest; }
字符串轉(zhuǎn)×××數(shù)處理
int myAtoi(char* strSrc) { int iValue = 0; int flag=0; while (*strSrc == ' ') { strSrc++; } if(*strSrc == '-') { flag = -1; } else if(*strSrc == '+') { flag = 1; } else if(*strSrc > '9' || *strSrc < '0') { return 0; } while(*strSrc>='0' && *strSrc <= '9' && *strSrc ) { iValue = iValue*10 + *strSrc -'\0'; strSrc++; } if(flag == 0) iValue = iValue*(-1); return iValue; }
判斷輸入的是否是回文
bool isPalindrome(char* input) { if(input == NULL) return false; char* strBegin = input; char* strEnd = input+strlen(input)-1; while (strBegin < strEnd) { if(*strBegin++ != *strEnd--) return false; } return true; }
把一個(gè)char組成的字符串循環(huán)右移n個(gè) void loopMove(char* pStr,int steps) { int nLen = strlen(pStr); if(nLen <= 0 || steps == 0) return; int nStep = steps % nLen; if(nStep == 0) return; char strTmp[128]; memcpy(strTmp,pStr+nLen-nStep,nStep); memcpy(strTmp+nStep,pStr,nLen-nStep); memcpy(pStr,strTmp,nLen); }
分享標(biāo)題:常見的字符串處理函數(shù)實(shí)現(xiàn)
鏈接分享:http://jinyejixie.com/article24/ijohce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營(yíng)銷、App設(shè)計(jì)、網(wǎng)站維護(hù)、外貿(mào)網(wǎng)站建設(shè)、定制網(wǎng)站、微信公眾號(hào)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)