什么是C语言中的void指针?

它是一个指针,可以保存任何数据类型变量的地址(或可以指向任何数据类型变量的地址)。

宣言

void指针的声明如下-

void *pointername;

例如:

void *vp;

访问-类型转换运算符用于通过变量的指针访问变量的值。

语法

下面给出了void指针的语法-

* ( (type cast) void pointer)

示例

int i=10;

void *vp;

vp = &i;

printf (“%d”, * ((int*) vp));

// int * type cast

例子1

以下是void指针的C程序-

#include<stdio.h>

main ( ){

   int i =10;

   float f = 5.34;

   void *vp;

   vp = &i;

   printf (“i = %d”, * ((int*)vp));

   vp = &f;

   printf ( “f = %f”, * ((float*) vp));

}

输出结果

执行以上程序后,将产生以下结果-

i = 10f = 5.340000

例子2

下面给出的是用于void指针中的指针算术的C程序-

#include<stdio.h>

#define MAX 20

int main(){

   int array[5] = {12, 19, 25, 34, 46}, i;

   void *vp = array;

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

      printf("array[%d] = %d\n", i, *( (int *)vp + i ) );

   }

   return 0;

}

输出结果

执行以上程序后,将产生以下结果-

array[0] = 12

array[1] = 19

array[2] = 25

array[3] = 34

array[4] = 46

以上是 什么是C语言中的void指针? 的全部内容, 来源链接: utcz.com/z/325059.html

回到顶部