C語言中的memset函式和陣列指標

2022-08-22 18:21:12 字數 593 閱讀 3564

**:

1 #include 2 #include 3

4using

namespace

std;56

intmain();

8 memset(a,5,sizeof

(a));

9 cout<0]<<"

"<1]<10 cout<"

"<1

<11 cout<<&a<<"

"<<&a+1

<1213

return0;

14 }

輸出:

84215045 84215045

0x7fff9fa48db0 0x7fff9fa48db4

0x7fff9fa48db0 0x7fff9fa48dc4

分析:memset函式是以位元組為單位進行初始化,本例中初始化引數為0x050505=84215045;

陣列指標a+1,增加的是乙個int的空間,而&a+1,增加的是整個陣列的空間;

c++中可以用std::fill_n()函式初始化,如std::fill_n(a,5,18),表示將a的前5個元素設定為18。

c 語言中memset函式

memset函式作用 初始化,將指標所指向的一大塊連續記憶體設定成乙個指定的數值。一般使用情景 定義了乙個變數後,將其初始化。可以對陣列 結構 等初始化,比for方便快捷。struct sigaction sa memset sa,0,sizeof struct sigaction 該函式語法 vo...

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...