全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  零基础学c语言  >  详情

c语言void指针及使用注意事项

来源:千锋教育
发布人:syq
2023-05-09

推荐

  `void` 指针是一种特殊的指针类型,它可以保存任何类型的指针,并且可以通过类型转换将其转换为任何类型的指针。`void` 指针的用法如下:

void *ptr;

   注意事项如下:

  1. `void` 指针是一种通用指针,不能直接用于操作,必须转换为特定类型的指针才能使用。

  2. `void` 指针可以指向任何类型的数据,但是不能对 `void` 指针进行解引用操作。

  3. 在指针类型转换时,应该保持数据类型的正确性,否则可能会导致程序运行错误。

c语言void指针及使用注意事项

  下面是 `void` 指针的使用示例:

#include <stdio.h>

int main()
{
int a = 10;
double b = 20.5;
char c = 'A';

// 将指针p1指向整型变量a
int *p1 = &a;
// 将指针p2指向双精度变量b
double *p2 = &b;
// 将指针p3指向字符变量c
char *p3 = &c;

// 定义并初始化一个void指针,用于保存所有类型指针的地址
void *ptr = NULL;
ptr = p1;
printf("p1=%d\n", *p1);

ptr = p2;
printf("p2=%f\n", *p2);

ptr = p3;
printf("p3=%c\n", *p3);

return 0;
}

   输出结果如下:

p1=10
p2=20.500000
p3=A

   在上面的代码中,我们首先声明了 `int` 类型的变量 `a`,`double` 类型的变量 `b`,以及 `char` 类型的变量 `c`,并分别取得它们的指针并分别指向 `p1`、`p2`、`p3` 中。然后,我们声明了一个 `void` 指针 `ptr`,并将其分别指向 `p1`、`p2`、`p3` 中的指向的地址,并将其输出。从结果上可以看出,我们可以使用 `void` 指针来保存其他类型的指针,并进行类型转换。

相关推荐

在线咨询 免费试学 教程领取