void的字面意思是空类型
void *的意思是空类型指针

1. void用途

① 对函数返回值的限定
函数没有返回值 void fun(int a);

② 对函数参数的限定
函数有返回值,但没有参数 int fun(void)

2. void*用途

① 函数可接受任意类型的指针

② void *类型可以接受任意类型指针
例子:

void *p1;char *p2 = “hellp”;p1 = p2;

任何类型的指针都可以直接赋值给它,无需进行强制类型转换

③ void *类型不能做运算

void *p;p++;//错

3. 总结

void指针给泛型编程提供可能,void指针其实在实际工程中是不推荐使用的,对类型的强制指定是安全的。

C++中void指针相关推荐

  1. c语言中的void指针,C程序中void指针的概念

    到目前为止,我对void指针的轻描淡写如下. 当使用关键字void声明指针变量时,它将成为通用指针变量.任何数据类型(char,int,float等)的任何变量的地址都可以分配给void指针变量. m ...

  2. c++中的void指针和const指针

    在c++中可以声明指向void类型的指针,指向void类型的指针称为void指针,此外,在声明指针时,还可以用关键字const进行修饰,用关键字const修饰的指针称为const指针. 1.void指 ...

  3. C++中void和void*指针的含义 (指针类型的含义)

    转载自:http://blog.csdn.net/lee_shuai 指针有两个属性:指向变量/对象的地址和长度,但是指针只存储地址,长度则取决于指针的类型:编译器根据指针的类型从指针指向的地址向后寻 ...

  4. Marshal在C#中的应用(void *指针到IntPtr的转化)

    C#调用C语言的API时一般把void *指针转换成IntPtr,但这经常远远不够的.在C语言中void *是个万金油,尤其是一些老的c语言程序,所有的参数就一个void*指针,里面包罗万象,然后在程 ...

  5. c语言 万能函数指针,C/C++编程笔记:C语言精华解析之void *指针,指针中的万能指针...

    什么是万能指针? 万能指针其实就是void *类型的指针,而void *指针一般被称为通用指针或叫泛指针.它是C语言关于纯粹地址的一种约定.当某个指针是void型指针时,所指向的对象不属于任何类型. ...

  6. 指针中NULL(空指针)和void指针

    1:NULL指针 NULL指针一般用在初始化一个存储类型,这个NULL指针不能用于存放数据类型和访问(你用get()得不到一个具体值,但是对于一个指针变量,我们必须要将这个指针的指向说明,要么将这个指 ...

  7. C/C++语言void及void指针深层探索。C中void是什么意思? 为什么有时可用可不用?

    C/C++语言void及void指针深层探索.C中void是什么意思? 为什么有时可用可不用? 1.概述 许多初学者对C/C++语言中的void及void指针类型不甚理解,因此在使用上出现了一些错误. ...

  8. C++中的空指针和void * 指针

    空指针(null pointer) 空指针不指向任何对象,在使用一个指针前首先要判断是否为空. 用法: int *ptr1=nullptr; //等价于int *ptr1=0; int *ptr2=0 ...

  9. java unsafe获取指针_【实战Java高并发程序设计 1】Java中的指针:Unsafe类

    是<实战Java高并发程序设计>第4章的几点. 如果你对技术有着不折不挠的追求,应该还会特别在意incrementAndGet() 方法中compareAndSet()的实现.现在,就让我 ...

  10. 【Smart_Point】C/C++ 中共享指针 shared_ptr

    1. 共享指针 shared_ptr 目录 1. 共享指针 shared_ptr 1.1 共享指针解决的问题? 1.2 创建 shared_ptr 对象 1.3 分离关联的原始指针 1.4 自定义删除 ...

最新文章

  1. centos 安装java web_Centos上安装java web的环境
  2. Linux Grep 命令说明
  3. 学习 WCF (3)--开发WCF客户程序
  4. 观察者模式在JDK应用中的源码分析
  5. 《零基础看得懂的C语言入门教程 》——(十二)原来结构体是这么回事
  6. WCDMA中的TSTD和STTD
  7. Mysql客户端的安装
  8. iOS之深入解析Hash在iOS中的应用
  9. LTCC带通滤波器设计
  10. 清华085211计算机技术,2018年清华大学计算机系计算机技术考研(085211)考试科目、参考书目、复习经验---新祥旭考研...
  11. 计算机网络显示正常 但无法上网怎么办,如何解决显示网络已连接但无法上网...
  12. opencv打开网络摄像机实时视频
  13. 系列微课|《Python程序设计(第3版)》第4章
  14. 刘强东:京东高管降薪10%-20% 拿百亿投向基层员工
  15. 计算机关机慢怎么解决方法,为什么电脑关机很慢|电脑关机缓慢的解决方法
  16. sql函数PadLeft与PadRight代码实例
  17. ajax document.write,使用AJAX时,JavaScript Document.Write替换所有正文内容
  18. DataFrame获取列名
  19. 投票页面制作线上投票活动制作网络投票制作关注投票制作
  20. 支付后但是显示未支付,再次支付如果又支付成功了怎么办? 后端代码逻辑是什么?【杭州多测师_王sir】【杭州多测师】...

热门文章

  1. Sharepoint 浅谈 [转]
  2. uni-app 基于 Promise 的 request 请求封装
  3. Golang中interface类型转string类型
  4. .doc文件标题的使用
  5. Layui 数据表格动态cols(字段)动态变化
  6. 个人展示-LICHUNHUI
  7. gsettings set org.gnome.desktop.interface scaling-factor 2无效果
  8. LINUX一个正确的mime xml范例
  9. LINUX SHELL让一个应用进程脱离终端运行
  10. 编译OpenJDK8 arm32的源码库