C語言實現字串拷貝函式的幾種方法
字串拷貝的實現:
#include <stdio.h>
#include <assert.h>
void Mystrcpy1(char *des,const char *src)
{
assert(des != NULL && src != NULL);
if(des==NULL && src == NULL)
{
return;
}
int i;
for(i=0;*src!='\0';i++)
{
des[i]=src[i];
}
des[i]='\0';
}
void Mystrcpy2(char *des, const char *src)
{
assert(des != NULL && src != NULL);
if(des==NULL && src == NULL)
{
return;
}
while(*src!='\0')
{
*des=*src;
des++;
src++;
}
*des='\0';
}
void Mystrcpy3(char *des,const char *src)
{
assert(des != NULL && src != NULL);
if(des==NULL && src == NULL)
{
return;
}
while(*src!='\0')
{
*des++ = *src++;
}
*des='\0';
}
void Mystrcpy4(char *des,const char *src)
{
while(*des++ = *src++);//相當於while(*(des++)=*(src++));
}
char *Mystrcpy(char *des, char *src)
{
char *p=des;
while(*des++ = *src++);
return p;
}
int main()
{
char *str1 = "hello";
char str2[10];
Mystrcpy(str2,str1);
printf("%s\n",str2);
return 0;
}
列印結果:hello
相關文章
- 【JS】深拷貝與淺拷貝,實現深拷貝的幾種方法JS
- JS中的深淺拷貝以及實現深拷貝的幾種方法.JS
- C 語言中返回字串函式的四種實現方法字串函式
- C語言-字串函式的實現(一)之strlenC語言字串函式
- C語言-字串函式的實現(五)之strstrC語言字串函式
- 淺談深拷貝與淺拷貝?深拷貝幾種方法。
- JavaScript深拷貝的幾種方法JavaScript
- C++拷貝建構函式(深拷貝,淺拷貝)C++函式
- 【C語言】常用的字串函式及相關函式的自我實現C語言字串函式
- c語言拷貝檔案程式C語言
- Java實現檔案拷貝的4種方法.Java
- c語言與字串相關的庫函式的模擬實現C語言字串函式
- 模擬實現不受限制的字串函式--C語言版字串函式C語言
- c語言字串處理函式大全C語言字串函式
- JavaScript實現淺拷貝的方法JavaScript
- C語言——常用標準輸入輸出函式 scanf(), printf(), gets(), puts(), getchar(), putchar(); 字串拷貝函式 strcpy(), strncpy(), strchr(), strstr()函式用法特點C語言函式字串
- C++語言之結構體、類、建構函式、拷貝建構函式C++結構體函式
- C 語言實現泛型 swap 函式泛型函式
- C語言相關的基礎字串函式C語言字串函式
- C++拷貝建構函式詳解C++函式
- C++ 拷貝建構函式詳解C++函式
- c/c++ 拷貝控制 建構函式的問題C++函式
- 淺拷貝與深拷貝的實現
- 建構函式,拷貝賦值函式的N種呼叫情況函式賦值
- 拷貝建構函式函式
- 自己寫的unix檔案拷貝指令cp實現函式函式
- Sql字串分組Split函式的兩種實現方法SQL字串函式
- C語言函式手冊:c語言庫函式大全|C語言標準函式庫|c語言常用函式查詢C語言函式
- 實現物件淺拷貝、深拷貝物件
- 拷貝建構函式的作用函式
- C++複製控制:拷貝建構函式C++函式
- 深拷貝與淺拷貝的實現(一)
- C語言的函式C語言函式
- 使用splice函式實現0拷貝的回顯伺服器函式伺服器
- C++之Big Three:拷貝構造、拷貝賦值、解構函式探究C++賦值函式
- 深入剖析Linux IO原理和幾種零拷貝機制的實現Linux
- [轉]delphi 有授權許可的字串拷貝函式原始碼字串函式原始碼
- js 深拷貝兩種方法JS