c語言裡strcat函式的自我實現,strcat函式的作用是把乙個字串的內容追加到另乙個字串上,首字元代替『\0』
①未優化版本
//my_strcat模擬實現
#include
void
my_strcat
(char
* arr1,
const
char
* arr2)
while
(*arr2)
*arr1 =
*arr2;
}int
main()
(解析)
1.函式體內,第一層迴圈找到『\0』字元,因為從『\0』後面開始追加,所以找到『\0』,讓arr1的指標指向『\0』,之後操作和strcpy一樣
2.類似於strcpy函式,拷貝的最後要把『\0』也拷貝,即多加一條語句
②優化版本
//my_strcat模擬實現
#include
void
my_strcat
(char
* arr1,
const
char
* arr2)
arr1--;
while
(*arr1++
=*arr2++)}
intmain()
(解析)
1.arr1++的意思是先解引用,判斷後++,即使判斷時arr1為『\0』也會加加,這就導致第一層迴圈結束以後arr1指向的是『\0』後面的字元,所以對arr1的位址–操作
C語言之strcat函式
原本以為很簡單的乙個例子,結果讓我鬱悶了乙個上午 雖然這個知識點也懂,但還是在實踐中犯了錯,乙個上午的時間,多麼痛的領悟啊 先貼上我的 include includechar mystrcat char dest,const char src printf mystrcat s n mystrcat...
C語言 構造Strcat函式
題目 編寫函式fun,其功能是 實現兩個字串的連線 不要使用庫函式strcat 即 把p2所指的字串連線到p1所指的字串的後面。例如 分別輸入下面兩個字串 firststring secondstring 程式輸出 firststring secondstring 編譯環境 vs2010 inclu...
C語言中的strcat 函式
標頭檔案 include函式原型 char strcat char dest,const char src 函式描述 strcat 會將引數src字串拷貝到引數dest所指的字串尾,第乙個引數dest要有足夠的空間來容納要拷貝的字串 返回值 返回dest字串引數的起始位址 例子 include in...