关于Qt程序运行时出现:QSocketNotifier: Invalid socket 11 and type 'Read', disabling...

本文探讨了在Qt环境中使用gcc编译器时遇到的段错误问题,具体表现为QSocketNotifier报错。问题出现在周立功3352开发板上的串口读数据函数中,由于局部变量地址分配不当导致溢出。解决方案是将这些变量声明为静态变量。

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

运行环境:Qt4.8.5   gcc4.5.2   周立功3352开发板

问题:程序运行过程中出现 QSocketNotifier: Invalid socket 11 and type 'Read', disabling...Segmentation fault

本人出现的原因是,串口读数据函数中,定义局部变量,然后取地址赋值,串口读数据函数频繁调用,当寄存器分配不足时,变量就分配到内存中,这时就容易造成地址取错溢出,形成段错误


解决:将串口读取函数中变量声明成静态



每个人可能遇到的情况不一致,不喜勿喷。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值