天天看點

memcpy函數

c和c++使用的記憶體拷貝函數,memcpy函數的功能是從源src所指的記憶體位址的起始位置開始拷貝n個位元組到目标dest所指的記憶體位址的起始位置中。

(可以複制其他任意資料類型)

strcpy(a,b);

隻能将b字元串複制給a字元串

函數原型

void *memcpy(void *dest, const void *src, size_t n);

功能

從源src所指的記憶體位址的起始位置開始拷貝n個位元組到目标dest所指的記憶體位址的起始位置中。

先講複制字元串:

這樣輸出的b=“123456789”;

再看另外一種複制字元串的方式:

最後還将一個int型的數組複制:

最後:說下strcpy和memcpy的差別:

strcpy和memcpy主要有以下3方面的差別。

1、複制的内容不同。strcpy隻能複制字元串,而memcpy可以複制任意内容,例如字元數組、整型、結構體、類等。

2、複制的方法不同。strcpy不需要指定長度,它遇到被複制字元的串結束符”\0”才結束,是以容易溢出。memcpy則是根據其第3個參數決定複制的長度。

3、用途不同。通常在複制字元串時用strcpy,而需要複制其他類型資料時則一般用memcpy

繼續閱讀