可以將任意類(lèi)型的指針賦值給void *類(lèi)型的變量,。
C語(yǔ)言中NULL 就是(void *)0;
void指針可以指向任意類(lèi)型的數(shù)據(jù),亦即可用任意數(shù)據(jù)類(lèi)型的指針對(duì)void指針賦值,。例如:
int * pint;
void *pvoid;
pvoid = pint; /* 不過(guò)不能 pint=
pvoid; */ 如果要將pvoid賦給其他類(lèi)型指針,,則需要強(qiáng)制類(lèi)型轉(zhuǎn)換如:pint=
(int *)pvoid;
- #include <stdio.h>
- #include <string.h>
-
- int main(int arg0,char *args[]){
- void * p;
- int arr[2][3]={{0}};
- int a[10];
- int b =1;
- char c = 'a';
- p = arr;
- p = a;
- p = &b;
- p = &c;
- return 0;
- }
|