草庐IT

corruption

全部标签

c++ - 什么可以修改帧指针?

我现在在工作中的一个相当大的C++应用程序中突然出现了一个非常奇怪的错误(在CPU和RAM使用以及代码长度方面很大-超过100,000行)。这是在双核SunSolaris10机器上运行的。该程序订阅股票价格提要并将它们显示在用户配置的“页面”上(页面是用户定制的窗口结构——该程序允许用户配置此类页面)。在其中一个底层库变成多线程之前,这个程序过去一直没有问题。受此影响的程序部分已相应更改。关于我的问题。大约每执行三次程序就会在启动时出现段错误。这不一定是一个硬性规定——有时它会连续崩溃3次,然后连续工作5次。有趣的是段错误(阅读:痛苦)。它可能以多种方式表现出来,但最常见的情况是函数A

c++ - 调试堆栈损坏问题

我正在C++(VisualStudio2015)中的大型应用程序上调试“访问冲突”异常。该应用程序是由多个库构建的,问题发生在其中一个(SystemC)上,尽管我怀疑问题的根源在别处。我看到的是一个函数调用,它破坏了调用者的成员函数的地址。m_update_phase=true;m_prim_channel_registry->perform_update();m_update_phase=false;inlinevoidsc_prim_channel_registry::perform_update(){for(inti=m_update_last;i>=0;--i){m_updat

c++ - 调用C++成员函数指针: this-pointer gets corrupted

我需要将一些成员函数指针转换为void*指针(因为我需要将它们压入Lua堆栈,但问题与Lua无关)。我使用union来做到这一点。但是,当我将成员函数指针转换为void*并再次返回,然后尝试使用该类的实例调用该指针时,this指针会损坏。奇怪的是,如果我将void*指针转换回C风格的函数指针,并将指向该类的指针作为第一个参数,这个问题就不会发生。这是演示问题的一段代码:#includeusingnamespacestd;classtest{inta;public:voidtellSomething(){coutworks//callwithCstylefunctionpointerin

C++:读取数据怎么可能影响内存?

最近我一直在深入研究C++,我的错误似乎变得复杂了。我有一个对象vector,每个对象都包含一个floatvector。我决定我需要创建一个进一步的平面数组,其中包含一个所有对象的所有浮点值。它比那复杂一点,但问题的要点是,当我遍历我的对象以提取浮点值时,在某些时候我的对象vector被更改,或者以某种奇怪的方式损坏。(我的读操作都是const函数)另一个例子是MPI。我刚刚开始,所以我只想在两个不同的节点上运行完全相同的代码,它们有自己的内存并且没有发生数据传输,一切都非常简单。令我惊讶的是,我遇到了段错误,经过几个小时的跟踪,我发现一个变量的一次赋值将一个完全不同的变量设置为NUL

c++ - fwrite() 文件损坏 C++

我是C++的新手(从C#迁移过来),所以我不太确定这里发生了什么。我想做的是从文件中读取图像并将其写入输出文件,但每当我这样做时,文件的某些部分似乎已损坏。我检查了内存中的数据,它确实匹配,所以我相信罪魁祸首一定是fwrite()发生了什么,尽管它总是可能只是我做错了什么。这是一些示例数据:http://pastebin.com/x0eZin6K还有我的代码://usedtofigureoutifreadinginonegiantswoophastodowithcorruptionintBlockSize=0x200;//Readthefiledataunsignedchar*data

c++ - 使用错误的 "this"指针调用构造函数。这是堆栈损坏吗?

编辑:我在评论者的帮助下弄明白了。回答我标题中提出的问题:不,这不是堆栈损坏,它的gdb报告了错误的值。该程序实际上按预期运行并且具有正确的this指针。促使我发布此问题的实际错误行为可能与我在此处描述的问题完全无关。首先是一个警告。我相信这是一个内存损坏问题,除了“彻底检查你的代码”之外,我通常不会期望得到答案,但我已经看到这种行为反复出现,希望你们中的一些人对这个问题有洞察力以及我是如何做的可以找到它的来源。我目前正在实现区间静态分析,它跟踪C程序中变量的可能范围。我的基区间类的复制构造函数如下所示:itvt::itvt(constitvt&i):_i(i.type==INTBV?

c++ - .obj : fatal error LNK1107: invalid or corrupt file: cannot read at 0x6592

我正在尝试将.obj模型加载到我的C++opengl3代码中,但由于某种原因它给了我这个错误:1>正在链接...1>.\bunny.obj:fatalerrorLNK1107:无效或损坏的文件:无法在0x6592处读取我试图搜索类似的错误,但有关于.dll或.lib的错误。你能帮我解决这个问题吗?我也尝试过使用不同的obj模型,但它总是给我这个错误。 最佳答案 您正在尝试使用C++链接器加载您的对象模型(可能您刚刚将它添加到项目中,现在它正在尝试编译)。链接器可以处理.obj文件,但它等待它们成为“目标代码”文件(通常也有.obj扩

Idea mvn命令打包,运行时报Error Invalid or corrupt jarfile jar

在idea中项目打jar包,运行时出现ErrorInvalidorcorruptjarfilejar错误解决办法:1、重新打包,将原来的jar文件覆盖,再重新运行2、打包时查看idea控制台输出日志,查看是否出现某一个地方出现error3、解压jar,查看META-INF文件下的MANIFEST.MF文件严格按照MANIFEST.MF文件的规范查看基本格式属性名称+:+空格+属性值没行最多72个字符,换行继续必须以空格开头文件最后必须要有一个回车换行Class-Path当前路径是jar包所在目录,如果要引用当前目录下一个子目录中的jar包,使用以下格式子目录/xxx.jar子目录/yyy.ja

ios - UINavigationController 'corrupted navigation bar' 问题

我在让我的导航Controller正常工作时遇到了严重的问题,并且已经尝试了该网站上几乎所有相关的问题。我的问题是,当我以编程方式执行segue时,导航栏中似乎有一个转换,但View没有改变。我看到的是以下错误:2013-10-2213:47:30.059App[2236:a0b]nestedpushanimationcanresultincorruptednavigationbar2013-10-2213:47:30.411App[2236:a0b]Finishingupanavigationtransitioninanunexpectedstate.NavigationBarsub

ios - .appname.sqlite.migrationdestination_xxxx 文件是什么?它会导致sql损坏错误吗?

我正在使用CoreData开发iOS应用程序。我从用户那里得到了应用程序数据,其中包括以下隐藏文件。文档/.appname.sqlite.migrationdestination_xxxx(549MB)文档/.appname.sqlite.migrationdestination_xxxx-shm(721KB)Documents/.appname.sqlite.migrationdestination_xxxx-wal(0Byte)并且在同一个Documents文件夹中有appname.sqlite,appname.sqlite-wal和appname.sqlite-shm。appna