在Ubuntu环境下,我开发了一个利用串行编程从串口读写的程序,并将这些值放入数据库中。最近,我增加了一些功能,使用boost库过滤读取函数等等。但是当我运行程序时,比如在15-20分钟后,我就会出现分段错误。当我检查我在程序中定义的日志文件时,我得到了下面的行。我不知道是怎么回事。有人能指点我吗。
--的副本,以及
程序;如果没有,请写信给自由软件基金会,公司,59号寺庙广场,330套房,波士顿,MA ",NU通用公共许可证
和这个程序一起;如果没有,写到自由软件
基金会,公司,59号圣殿广场,330套房,波士顿,马里兰州,“e
和这个程序一起;如果没有,写到自由软件
基金会,公司,59号寺庙广场,330套房,波士顿,马里兰州,"ram;如果没有,写到自由软件
基金会,公司,59号寺庙广场,330套房,波士顿,MA ",e自由软件基金会,公司,59号寺庙广场,套房330,波士顿,马里兰州","tion,Inc.,59号寺庙广场,Suite 330,Boston,MA ","ace,Suite 330,Boston,MA ","MA ","",
",“枢纽臂")
谢谢和问候,SamPrat。
发布于 2011-01-17 09:57:40
简单回答。你的程序分段出错了。这意味着它不再起作用了,而且它的行为可能会很糟糕。
在这种情况下,它开始打印一个字符串(可能没有正确结束),并且继续打印程序内存。您可能已经包含了GNU许可文本,它很长。分段错误程序打印其中一些字符串的可能性很高。
检查您的内存分配、字符串等。您正面临与内存相关的错误。
发布于 2011-01-17 10:08:11
我猜,
您正在打印/使用未终止的字符串。当您打印它时,它会一直打印每个字符,直到到达'/0‘或SEGFAULT :),GPL许可文本恰好位于正确的位置。
https://stackoverflow.com/questions/4711836
复制相似问题