typedef void *HANDLE用法与说明

本文深入解析了C++中void*与HANDLE的含义与使用场景,包括void*指针的特性、如何将其转换为具体类型以及在函数参数与返回值中的应用。通过实例展示了如何在创建事件等操作中灵活运用这些概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

语法

    typedef void *HANDLE;

含义

    就是用HANDLE来代表void*,也可理解为 HANDLE == void*

    void类型的指针表示可以指向任意类型的数据,但是void类型指针不能直接使用,使用前必须先转换成某种确定的类型。如:

void * pv;
int* pi=static_cast<int*>pv; //显式的转换回int*

    void类型指针可以用在函数的参数或返回值里。

    用作参数的时候,我们一般不关心传递进来的地址类型,比如memset这个函数的原型,memset就是为了将传递进来的地址开始的n个字节的值全部赋值成某个特定的值,所以没必要知道是什么类型的指针,就用void类型指针代替了。

    用作返回值的时候,一般是返回一个地址,至于这个地址你要做什么用那是你决定的,最常见的就是malloc了,它返回void类型指针作为分配好的内存区的首地址,至于是什么类型,就需要用户自己来指定了。

示例

typedef void *HANDLE;
HANDLE m_exitThreadEvent; 
m_exitThreadEvent = CreateEvent(NULL,FALSE,FALSE,NULL);

HANDLE CreateEvent(
  LPSECURITY_ATTRIBUTES lpEventAttributes, 
  BOOL bManualReset, 
  BOOL bInitialState, 
  LPTSTR lpName 
);


http://www.sowsoy.com/topics-388.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值