千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

首页 视频教程 培训课程 师资团队 技术干货 常见问题 面试题 职场就业 零基础学c语言 行业资讯
【热点话题】 c语言技术干货 c语言学习教程 c语言学习笔记 c语言面试题 c语言培训问答 c语言培训机构哪些好 c语言职场就业
当前位置:c语言培训  >  零基础学c语言  >  c语言void指针及使用注意事项

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

来源:千锋教育
发布人:syq
时间: 2023-05-09 11:49:25

  `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` 指针来保存其他类型的指针,并进行类型转换。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

最新文章NEW

相关推荐HOT

更多>>