memset函式是c/c++中的初始化函式,作用是將某一塊記憶體中的內容全部設定為指定的值, 這個函式通常為新申請的記憶體做初始化工作。
標頭檔案:
函式:void *memset (void *s,int ch,size_t n)
函式解釋:將s中當前位置後面的n個位元組用 ch 替換並返回 s ;
它是對較大的結構體或陣列進行清零操作的一種最快方法 。
1、memset函式常用於記憶體空間初始化。例如:
char str[
100]
;memset
(str,0,
100;
2、memset函式可以方便的清空乙個結構型別的變數或陣列。
例如:
struct sample_struct
;
結構體型別變數:
struct sample_struct s;
//一般情況下,清空s的方法:
s.name[0]
=;s.age =0;
//memset():
memset
(&s,0,
sizeof
(struct sample_struct)
);
結構體型別陣列:
struct sample_struct s[10]
;memset
(s,0
,sizeof
(struct sample_struct)
*10);
如果結構體中有陣列的話還是需要對陣列單獨進行初始化處理的。 memset 函式用法
memset 原型 extern void memset void buffer,int c,int count 用法 include 功能 把buffer所指記憶體區域的前count個位元組設定成字元c。說明 返回指向buffer的指標。用來對一段記憶體空間全部設定為某個字元。舉例 char a ...
memset函式用法
樓主希望通過庫函式memset 來對乙個陣列進行初始化,需要了解一下該函式的工作原理。庫函式memset 是針對位元組操作的,其中第二個引數值被賦給第乙個引數指向的記憶體位址開始的每乙個位元組,因此,這種初始化其實存在侷限性,也導致其主要用於清除陣列內容等。比如 假設i 0,1,2,memset a...
memset函式用法
將s所指向的某一塊記憶體中的每個位元組的內容全部設定為ch指定的ascii值,塊的大小由第三個引數指定,這個函式通常為新申請的記憶體做初始化工作,其返回值為指向s的指標。在c中 or 在c 中 void memset void s,int ch,size t n 函式解釋 將s中前n個 位元組替換為...