strcat 函數的實現

原型        extern char *strcat(char *dest,char *src);

用法        #include <string.h>ios

功能        把src所指字符串添加到dest結尾處(覆蓋dest結尾處的'\0')並添加'\0'。返回指向dest的指針。ide

說明         src和dest所指內存區域不能夠重疊且dest必須有足夠的空間來容納src的字符串spa

舉例

 char str4[] = "Hello world";
 char str5[] = "Hello World";
 cout << strcat(str4,str5) << endl;
.net

會出錯,由於str4沒有足夠的空間指針

下面是我本身的一個實現,不足之處,還望指正!!!code

#include "stdafx.h" #include <iostream> #include <assert.h>

using namespace std; //鏈接字符串
char* mystrcat(char* destStr,const char* srcStr)     //若是兩個字符串是同一個字符串呢?
{ assert(destStr != NULL && srcStr != NULL); char* temp=destStr; while(*destStr != '\0') { ++destStr; } while(*destStr++ = *srcStr++) NULL; return temp; //爲了實現鏈式操做,將目的地址返回
} int _tmain(int argc, _TCHAR* argv[]) { char str1[25] = "Hello world"; char str2[] = "Hello World"; cout << mystrcat(str1,str2) << endl; return 0; }

轉自:http://blog.csdn.net/yushuai007008/article/details/7626509blog

相關文章
相關標籤/搜索