ANSI新标准增加了一种"void"指针类型,即可定义一个指针变量,但是不指定它是指向哪一种数据类型。
char *p1; void *p2; . . . p1=(char *)p2;//p2指针本来是void类型,可用这条语句对其强制转换,将其转换成char类型 |
同样,可以用(void *)p1将p1的值转换成void *类型:
p2 = (void *)p1;//将p1转换成void类型指针 |
也可以将一个函数定义成void *类型,如:void *fun(char ch1,char ch2);表示该函数返回值是一个地址,它指向“空类型”,如果需要引用这个地址,根据需要对其进行转换:比如需要将这个函数的返回值(地址)转换成字符型,可以这样:
p1 = (char *)fun(char ch1,char ch2) |
阅读(1644) | 评论(0) | 转发(0) |