cast from ‘void*’ to ‘int’ loses precision

今天写libevent程序,想打印一下回调函数中参数的地址,所以使用reinterpret_cast将void*转换为int,但是一直报“cast from ‘void*’ to ‘int’ loses precision”,看了一下,虽然使用的操作系统是64位的,但是gcc定义的int还是32位的,所以由上面的报错,将void*转换为long后报警消失。

另外event_set中参数是值传输,所以为了在回调函数中安全的使用此参数,要在堆上申请空间,结束时要delete防止内存泄露。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值