![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
BUG解决
文章平均质量分 84
大可_
不想写Android
展开
-
(Linux) C++ segment default错误 GDB调试
问题现象程序以前都运行的好好的,但是最近更新了一个新的安装包安装到现场之后,出现频繁的不定时重启现象,有时候几分钟就重启,有时候几个小时出现重启。界面上显示 segment default段错误,double free or corruption (fasttop): 0x00007fffd06c9b50,看报错的信息可能是有的地方多次释放同一块内存。查看代码,没有之类的问题,通过查看程序的运行日志文件也没有发现明显的报错。问题排查因为通过查看报错信息并不能直接查看问题出现的具体原因或者具体是哪行代原创 2021-02-27 15:37:22 · 725 阅读 · 0 评论 -
C++ socket客户端向服务端发送数据丢失(Linux)
搭建一个简单的客户端与服务器,实现两者之间的通信。客户端向服务器发送数据时,服务端接收到的数据出现缺失的情况。比如:客户端发送数据为:“123456789”;服务端接收到的数据为:“123456”;出现此类情况可能是在使用send()函数时出错,send()函数原型:int send( SOCKET s,char buf,int len,int flags );其中len是发送数据的长度,使用strlen()函数获取数据长度,len=strlen(sendstr);如果错误使用成sizeof()原创 2020-11-12 20:51:21 · 882 阅读 · 0 评论 -
C++文件读写报错 “segment fault”、数据缺失
对文件进行读取操作,但是出现读取到数据为空或是数据有遗漏的情况,常见原因有以下两种:1 文件没有成功打开原因:在打开文件时,文件路径设置错误。出现这个错误可以通过对文件指针是否为空进行排查。解决办法:在执行文件打开命令后,一般要对文件指针进行判断是否为空,再执行剩下的命令。代码示例:FILE *fp=NULL; //创建文件指针fp=fopen("/root/code/file_rw/data","r"); //linux系统下注意 /root//判断文件是否成功打开if(f原创 2020-11-12 19:34:00 · 1370 阅读 · 0 评论