herrDeng網內搜尋

自訂搜尋

Ads

2009年3月18日 星期三

簡述memset , memcpy

簡述C函數memset , memcpy

18 則留言:

匿名 提到...

memset用來對一段內存空間全部設置為某個字符,一般用在對定義的字符串進行初始化為『 '或『\0';例:char a[100];memset(a, '\0', sizeof(a));

memcpy用來做內存拷貝,你可以拿它拷貝任何數據類型的對象,可以指定拷貝的數據長度;例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),會造成b的內存地址溢出。

匿名 提到...

memcpy用法:
void *memcpy( void *dest, const void *src, size_t count );

從src copy count bytes到dest

example : 從board1的位址 copy 64*sizeof(int) bytes到board2的位址

memset用法:
void *memset( void *dest, int c, size_t count );

從dest開始的連續count bytes, 每個byte的值都設為c

example : 從board1的位址開始連續64*sizeof(int) bytes都設為0

匿名 提到...

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

從src copy count bytes到dest

example : 從board1的位址 copy 64*sizeof(int) bytes到board2的位址



void *memset( void *dest, int c, size_t count );

從dest開始的連續count bytes, 每個byte的值都設為c

example : 從board1的位址開始連續64*sizeof(int) bytes都設為0

匿名 提到...

memcpy
原型:extern void *memcpy(void *dest, void *src, unsigned int count);

功能:由src所指內存區域複製count個字節到dest所指內存區域。
說明:src和dest所指內存區域不能重疊,函數返回指向dest的指針。
memset
原型:extern void *memset(void *buffer, int c, int count);

功能:把buffer所指內存區域的前count個字節設置成字符c。
說明:返回指向buffer的指針。

memset用來對一段內存空間全部設置為某個字符,一般用在對定義的字符串進行初始化為『 』或『\0』;例:char a[100];memset(a, '\0', sizeof(a));

memcpy用來做內存拷貝,你可以拿它拷貝任何數據類型的對象,可以指定拷貝的數據長度;例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),會造成b的內存地址溢出。

匿名 提到...

memcpy和memset的用法

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

從src copy count bytes到dest

example : 從board1的位址 copy 64*sizeof(int) bytes到board2的位址



void *memset( void *dest, int c, size_t count );

從dest開始的連續count bytes, 每個byte的值都設為c

example : 從board1的位址開始連續64*sizeof(int) bytes都設為0

匿名 提到...

例如:void *memcpy( void *dest, const void *src, size_t count );

是從src copy count bytes到dest,example :是從board1的位址 copy 64*sizeof(int) bytes到board2的位址

例如:void *memset( void *dest, int c, size_t count );

是從dest開始的連續count bytes,而每個byte的值都設為c,example :是從board1的位址開始連續64*sizeof(int) bytes都設為0

memset則是把某段記憶體的每個byte都設為某個值

匿名 提到...

memcpy
原型:extern void *memcpy(void *dest, void *src, unsigned int count);
功能:由src所指內存區域複製count個字節到dest所指內存區域。
說明:src和dest所指內存區域不能重疊,函數返回指向dest的指針。
memset
原型:extern void *memset(void *buffer, int c, int count);
功能:把buffer所指內存區域的前count個字節設置成字符c。
說明:返回指向buffer的指針。

memset用來對一段內存空間全部設置為某個字符,一般用在對定義的字符串進行初始化為『 』或『\0』;例:char a[100];memset(a, '\0', sizeof(a));

memcpy用來做內存拷貝,你可以拿它拷貝任何數據類型的對象,可以指定拷貝的數據長度;例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),會造成b的內存地址溢出。

匿名 提到...

memset用來對一段內存空間全部設置為某個字符,一般用在對定義的字符串進行初始化為『 '或『\0';例:char a[100];memset(a, '\0', sizeof(a));

memset
原型:extern void *memset(void *buffer, int c, int count);
用法:#i nclude
功能:把buffer所指內存區域的前count個字節設置成字符c。
說明:返回指向buffer的指針



memcpy用來做內存拷貝,你可以拿它拷貝任何數據類型的對象,可以指定拷貝的數據長度;例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),會造成b的內存地址溢出。

memcpy
原型:extern void *memcpy(void *dest, void *src, unsigned int count);
用法:#include < string.h >
功能:由src所指記憶體區域複製count個字節到dest所指記憶體區域。
說明:src和dest所指記憶體區域不能重疊,函數返回指向dest的指針。可以拿它拷貝任何數據類型的對象。


來源:http://chris701203.pixnet.net/blog/post/21889224

匿名 提到...

memset(Number,'\0',4);
意思就是把Number的值變成'\0',會用到的情況大致上都是對宣告為char的變數
因為在C與C++裡面字串的結尾需要'\0',才能知道此字串結束,會用到memset函數
的情況大部分為必須重複使用Number的變數,所以必須先清空原先的值;其實簡單的說
也可以是清空的意思~
memcpy-複製字串的語法
ex:
char str1[100];
char str2[100];
char str3[100];

memset(str3,0,sizeof(str3));
memcpy(str3,(void *)(str1[start1]),qty1);
memcpy((void*)(str3[qty1]),(void *)(str2[start2]),qty2);

匿名 提到...

memset()會將參數s所指的內存區域前n個字節以參數c填入,然後返回指向s的指針。在編寫程序時,若需要將某一數組作初始化,memset()會相當方便。


memccpy()用來拷貝src所指的內存內容前n個字節到dest所指的地址上。與memcpy()不同的是,memccpy()會在複製時檢查參數c是否出現,若是則返回dest中值為c的下一個字節地址。

匿名 提到...

memcpy
原型:extern void *memcpy(void *dest, void *src, unsigned int count);
功能:由src所指內存區域複製count個字節到dest所指內存區域。
說明:src和dest所指內存區域不能重疊,函數返回指向dest的指針。
memset
原型:extern void *memset(void *buffer, int c, int count);
功能:把buffer所指內存區域的前count個字節設置成字符c。
說明:返回指向buffer的指針。

memset用來對一段內存空間全部設置為某個字符,一般用在對定義的字符串進行初始化為『 』或『\0』;例:char a[100];memset(a, '\0', sizeof(a));

memcpy用來做內存拷貝,你可以拿它拷貝任何數據類型的對象,可以指定拷貝的數據長度;例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),會造成b的內存地址溢出。

匿名 提到...

memset用來對一段內存空間全部設置為某個字符,一般用在對定義的字符串進行初始化為『 '或『\0';例:char a[100];memset(a, '\0', sizeof(a)); /

memcpy用來做內存拷貝,你可以拿它拷貝任何數據類型的對象,可以指定拷貝的數據長度;例:char a[100],b[50]; memcpy(b, a, sizeof(b))

memcpy
原型:extern void *memcpy(void *dest, void *src, unsigned int count);
用法:include string.h
功能:由src所指記憶體區域複製count個字節到dest所指記憶體區域。
說明:src和dest所指記憶體區域不能重疊,函數返回指向dest的指針。可以拿它拷貝任何數據類型的對象。

舉例:char a[100],b[50] memcpyb, a, sizeofb注意如用sizeof(a),會造成b的記憶體地址溢出。

memset
原型:extern void *memset(voidbuffer, int c, intcount);
用法:#include string.h
功能:把buffer所指記憶體區域的前count個字節設置成字符c。
說明:返回指向buffer的指針。用來對一段記憶體空間全部設置為某個字符。

匿名 提到...

memset用來對一段內存空間全部設置為某個字符,一般用在對定義的字符串進行初始化為『 '或『\0';
例:char a[100];memset(a, '\0', sizeof(a));

memcpy用來做內存拷貝,你可以拿它拷貝任何數據類型的對象,可以指定拷貝的數據長度;
例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),會造成b的內存地址溢出。

匿名 提到...

memset的深刻内涵:用來對一段内存空間全部設置為某個字串,一般用在對定義的字串進行初始化為‘ ’或‘\0’;
例:char a[100];memset(a, \0, sizeof(a));

memcpy用來做内存拷貝,你可以拿它拷貝任何數據類型的對象,可以指定拷貝的數據長度;
例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),會造成b的内存地址溢出。

匿名 提到...

memset用來對一段內存空間全部設置為某個字符,一般用在對定義的字符串進行初始化為' '或'';
例:char a[100];memset(a, '', sizeof( a));

memcpy用來做內存拷貝,你可以拿它拷貝任何數據類型的對象,可以指定拷貝的數據長度;
例:char a[100],b[50]; memcpy(b, a, sizeof(b));注意如用sizeof(a),會造成b的內存地址溢出。

匿名 提到...

memcpy
功能:由src所指記憶體區域複製count個字節到dest所指記憶體區域。
說明:src和dest所指記憶體區域不能重疊,函數返回指向dest的指針。可以拿它拷貝任何數據類型的對象。

memset
功能:把buffer所指記憶體區域的前count個字節設置成字符c。
說明:返回指向buffer的指針。用來對一段記憶體空間全部設置為某個字符。
memset可以方便的清空一個結構類型的變數或數組。

匿名 提到...

memset則是把某段記憶體的每個byte都設為某個值
void *memset(void *dest, int c, size_t count);
memcpy用來做內存拷貝,你可以拿它拷貝任何數據類型的對象,可以指定拷貝的數據長度;void *memcpy( void *dest, const void *src, size_t count );

從src copy count bytes到dest

B9833115 郭偲亘 提到...

memset(字符串處理函數),並定義組中的的是C語言的功能。從一開始指定對象的指針指向指定的字符數,用來寫入指定的數據。

memcpy()函數將複製到dest指向的緩衝區src指向的前n個字節。源和目標不能重疊。

Related Posts Plugin for WordPress, Blogger...

熱門文章