3 1 28 void型別指標和空指標詳解

2021-07-25 13:30:16 字數 907 閱讀 2403

1:void 指標宣告

void main300()

2:void 指標用途

//void 可以接收任何型別指標的賦值,任何指標都可以賦值給空型別的指標,

用於儲存位址

void main301()

3:學習函式memset

//memset返回值就是乙個空型別,作用是對記憶體沒意義位元組進行挨個挨個賦值

void main302()

;float fl[5] = ;

for (int i = 0; i < 5; i++)

//準備操作字元陣列和整數陣列

//舉例:把前面5個字元(china)全部賦值為a,

memset(str,'a',5);//從str這個位址開始,把5個位元組全部賦值為字元a,作用是從str的首位址開始,前進5個位元組,進行賦值

printf("%s\n",str);//結果是:aaaaa is great

//如何把陣列清0,對20的位元組全部賦值為0,對於陣列清0

memset(num,0,20);//傳入陣列的位址num,5個元素,每個元素4個位元組,一共20個位元組

memset(fl, 0, 20);//對20的位元組全部賦值為0,對於陣列清0,5個元素20個位元組

//輸出陣列每個元素的值

for (int i = 0; i < 5;i++)

//結果是5個0,實現了對陣列清0,從這個首位址開始

system("pause");

}4:學習函式malloc

空型別的指標可以轉換為任何型別的指標,乙個型別的指標包含了3個資訊,位址,步長,內容如何解析

//malloc,分配記憶體函式,它的返回值就是1個void指標型別,

void main303()

system("pause");

}

空指標和void 型別指標

今天,有個師弟問我 師兄,空指標和void 型別指標是怎樣的?當時,我大概的說法是 1 空指標是沒有指向的指標,將暫時用不到的指標定義成空指標,能防止誤用。2 而void 型別的指標是有指向的指標,但它的指向的資料的型別暫時不確定,所以先弄成void 型別,後期一般要強制轉換的。回來後,發現這種說法...

空指標和void 指標

空指標不指向任何物件,在試圖使用乙個指標之前可以檢查它是否為空。以下列出幾個生成空指標的方法 int p1 nullptr int p2 0 int p3 null 得到空指標最直接的辦法就是用字面值nullptr來初始化指標,這是c 11新標準引入的一種方法。nullptr是一種特殊型別的字面值,...

空型別指標(void 的理解

原文 void指標是空型別指標,它不指向任何型別,即void指標僅僅是乙個位址,所以空型別指標不能進行指標運算 也不能進行間接引用 因為指標運算和間接引用都需要指標的型別資訊 例如 void p 僅僅表示p存放乙個位址 p error 運算離不開指標型別 p 20.5 error 訪問p指向的變數空...