不会写代码的鹅崽 2023-02-14 22:39 采纳率: 100%
浏览 48
已结题

linux开发error: invalid conversion from ‘long unsigned int’ to ‘void*’

linux系统编译
error: invalid conversion from ‘long unsigned int’ to ‘void*’
报错是什么意思怎么解决

img

  • 写回答

3条回答 默认 最新

  • wkd_007 6月份城市(广州)之星TOP 43 2023-02-15 09:12
    关注

    read函数的原型如下:

    #include <unistd.h>
    ssize_t read(int fd, void *buf, size_t count);
    

    这个报错的意思是,你将一个unsigned long结构转换成 void*时,转换失败了。
    结合你的图片来看,是**read(fd[1],sizeof(c))这句使用错了,应该改为read(fd[1],&c,sizeof(c))**。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 2月26日
  • 已采纳回答 2月18日
  • 创建了问题 2月14日

悬赏问题

  • ¥20 找驱动QTR2774-SU-IBM版本驱动
  • ¥15 NeRF的代码复现以及人工智能入门
  • ¥15 centos如何做一个可以让ikuai连接的openvpn
  • ¥15 Protege 中的Entities下面的界面删除了如何复原
  • ¥15 scrapy爬虫求帮
  • ¥15 imageEnView绘图问题
  • ¥15 关于#python#的问题:您好可以加您一下联系方式吗,在复现的时候确实有点问题难以解决
  • ¥15 联想电脑重装系统时无法发现硬盘
  • ¥15 MATLAB与UR10e实体机械臂建立通讯
  • ¥15 c++题需要快一点不用opencv