c 語言中memset函式

2021-10-06 01:22:12 字數 862 閱讀 4852

memset函式作用

初始化,將指標所指向的一大塊連續記憶體設定成乙個指定的數值。

一般使用情景:定義了乙個變數後,將其初始化。可以對陣列、結構、等初始化,比for方便快捷。

struct sigaction   sa; 

memset(&sa,0,sizeof(struct sigaction));

該函式語法:

void * memset ( void * ptr, int value, size_t num );

ptr指的是指向記憶體塊的指標。value指的是記憶體塊被設定的數值的大小。size_t num指的是記憶體塊的大小。

標頭檔案引用:

引用標頭檔案:

#inlcude

注意:

對陣列a進行初始化時,表示式memset(a,0,size)中的size指的是陣列所佔記憶體的大小,而不是陣列中元素的個數。

下面這個是錯誤的示例:

#include

#include

using namespace std;

int main()

int a= ;

int n=sizeof(a)/sizeof(int );

//initial the array

memset(a,0,n);

//print the array

for(int i=0;i}

錯誤示例的輸出:

0,2,3,4

它並沒有將所有的項都初始化,只對第乙個數進行了初始化。應為int型別所分配的空間是4位元組。

C語言中memset函式詳解

功 能 將s所指向的某一塊記憶體中的每個位元組的內容全部設定為ch指定的ascii值,塊的大小由第三個引數指定,這個函式通常為新申請的記憶體做初始化工作 用 法 void memset void s,char ch,unsigned n 程式例 include include include int...

C語言中memset函式詳解

功 能 將s所指向的某一塊記憶體中的每個位元組的內容全部設定為ch指定的ascii值,塊的大小由第三個引數指定,這個函式通常為新申請的記憶體做初始化工作 用 法 void memset void s,char ch,unsigned n 程式例 include include include int...

C語言中memset函式詳解

c語言中memset函式詳解 追夢海星 功 能 將s所指向的某一塊記憶體中的每個位元組的內容全部設定為ch指定的ascii值,塊的大小由第三個引數指定,這個函式通常為新申請的記憶體做初始化工作 用 法 void memset void s,char ch,unsigned n 程式例 include...