strcpy()只能透過零結尾來判定結束,所以有以下的缺點:
1. 速度慢,因為只能以BYTE為單位執行拷貝。
2. 容易出現overlay/memory-corruption,這有兩個情況,一個是目標緩衝區太小了,另一個是來源忘了零結尾。
3. 重疊的情況時,拷貝會出錯。
memcpy()透過第三個參數來得知拷貝的長度,程式本身可以優化,也就是速度可以快些,再加上拷貝的長度由程式師指定,比較不容易出錯,但重疊的情況仍有問題,這種情形需須改成呼叫memmove()。